-
Fototrend
A Microsoft Excel topic célja segítséget kérni és nyújtani Excellel kapcsolatos problémákra.
Kérdés felvetése előtt olvasd el, ha még nem tetted.
Új hozzászólás Aktív témák
-
Delila_1
veterán
válasz
marec1122
#39394
üzenetére
Mutt válaszán kívül még két megoldás:
=SZORZATÖSSZEG((A1:A21<>"")/DARABTELI(A1:A21;A1:A21))
vagy egy tömbfüggvény, amit Shift + Ctrl + Enterrel kell bevinned
=SZUM(1/DARABTELI(A1:A21;A1:A21))Az A1:A21 helyére a saját tartományod címét írd be.
Szerk: félreértettem. Arra az esetre írtam a függvényeket, ha meg kell számolni, hány féle érték vab a tartományban.
-
Delila_1
veterán
válasz
wednesday
#39390
üzenetére
Tervező módban az egérrel könnyedén állíthatod a vezérlő méreteit, de a tulajdonságoknál pontosan is megadhatod a szélességét a Width mezőben.
Nem tudok róla, hogy kulcsszavakra lehetne keresni benne.
Az egyszerre látható sorok számát a ListRows opciónál állíthatod be. Ez alapértelmezés szerint 8, de ha nagyobb értéket adsz neki, több sort mutat, könnyebb a választás a hosszú szövegek közül.
-
Delila_1
veterán
válasz
wednesday
#39388
üzenetére
Érvényesítés helyett használj ActiveX vezérlőt.
Fejlesztőelemek > Vezérlők > Beszúrás > ActiveX vezérlők > Beviteli lista
Tervező módban legyél, a tulajdonságoknál a ListFillRange helyen adhatod meg a bevitel helyét, pl. A1:A50.
Kikapcsolva a tervező módot már működik is a kezdőbetűre ugrás. -
Delila_1
veterán
válasz
Anonymusxx
#39383
üzenetére
vegyük, hogy az eredeti szöveged az A1 cellában van. Az eredmény cella képlete:
=A1 & "/abc"
A képletet másolhatod a többi kipótolandó cella mellé.
-
Delila_1
veterán
válasz
ny.janos
#39368
üzenetére
Igazad van, ennek megfelelően átalakítottam.
Az A oszlop alján szerepelnek a színkódok.
Atyca (39369): szívesen a "tacepaót".
-
Delila_1
veterán
válasz
ny.janos
#39351
üzenetére
Nem néztem meg, milyen dátumok szerepelnek a pihenőnapoknál, mert az elnevezésüket nem tudtam értelmezni. Ezek munkanapként értelmezett szombatok, amik a BF oszlopban már eleve megvoltak.
Szombatokat nem vittem az ünnepek közé. 1 db vasárnap (2018.04.01) szerepel az ünnepek között, ahogy a munkaügyi naptárban is. Nem mindegy, hogy hétvége, vagy ünnepnap, a fizetés szempontjából. -
Delila_1
veterán
válasz
tgumis
#39238
üzenetére
Az eredeti kérdésed úgy szólt, hogy "ha a K1 cellába beírom". Ehhez írtam az eseményvezérelt makrót.
A laphoz rendelt makrót nem töröltem, csak kommentbe tettem. Itt az átírt fájl.
-
Delila_1
veterán
válasz
tgumis
#39234
üzenetére
Rendeld a laphoz ezt a makrót.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$K$1" Then
Application.EnableEvents = False
Range("A1").CurrentRegion.AutoFilter Field:=1, Criteria1:=Target
Range("A1").CurrentRegion.Offset(1).Select
Selection.SpecialCells(xlVisible).Delete shift:=xlUp
ActiveSheet.Range("$A$1:$F$1").AutoFilter Field:=1
Application.EnableEvents = True
Range("A2").Select
End If
If Target.Address = "$N$1" Then
Range("A1").CurrentRegion.AutoFilter Field:=2, Criteria1:=Target
End If
End Sub -
Delila_1
veterán
-
Delila_1
veterán
válasz
föccer
#39131
üzenetére
Egy egysoros makró kell hozzá.
ActiveSheet.PageSetup.CenterHeader = Sheets("Munka1").Range("C3")A cellatartalom megjelenítési helyét az élőfej-élőláb területén módosíthatod, a CenterHeader helyett másik területet megadva (LeftHeader, RightHeader, LeftFooter, CenterFooter, RightFooter).
-
Delila_1
veterán
válasz
dellfanboy
#39056
üzenetére
Állj a megjelenítendő (cím)sor alá, majd kattints a Nézet | Panelek rögzítése menüpontra.
Mit szeretnél még megjeleníteni a hivatkozásban?
-
Delila_1
veterán
Táblázattá alakítod az adataidat. Beszúrás, Táblázat. Ebből készíted el a kimutatást.
Mikor bővíted a sorokat, a táblázatod mérete automatikusan az új tartományhoz idomul. Ekkor annyi a teendő, hogy a kimutatást frissíted (kimutatásban állva jobb klikk, frissítés). Minden alkalommal az aktuális tartomány lesz az alap a feldolgozáshoz.
Ilyen sok terméknél talán célszerűbb, átláthatóbb elrendezés a sorokhoz a megrendelőt ÉS a cikkszámot behúzni, az értékekhez menjen a mennyiség.
-
Delila_1
veterán
válasz
Teejay83
#39033
üzenetére
Ha csak 1 ilyen sorod van, az Adatok | Szövegből oszlopok menüponttal egymás mellé írathatod az egyes tagokat, majd a másolás, irányított beillesztés, transzformálva menüponttal egymás alá rendezheted a szétválasztott adatokat.
Több sornál futtathatod a lenti makrót.
Sub trans()
Dim sor As Long, usor As Long, ide As Long
Dim szoveg As String, hossz As Integer
usor = Range("A" & Rows.Count).End(xlUp).Row
ide = 1
For sor = 1 To usor
szoveg = Cells(sor, 1)
Do While InStr(szoveg, ",") > 0
hossz = InStr(szoveg, ",")
Cells(ide, "B") = Left(szoveg, hossz - 1)
szoveg = Mid(szoveg, hossz + 1, 100)
ide = ide + 1
Loop
Cells(ide, "B") = szoveg
ide = ide + 1
Next
End Sub -
Delila_1
veterán
válasz
Flowtation
#39002
üzenetére
Kezded beírni a függvényt
=ha(
A zárójel után rákattintasz a szerkesztőlécen lévő fx ikonra, mire feljön a képletszerkesztő ablak.
Beírod a példa szerinti következő függvényt
=ha(hibás(
Újabb fx-re ennek a függvénynek a segítő ablaka jelenik meg. -
Delila_1
veterán
válasz
Flowtation
#38997
üzenetére
Az FKERES függvény tartománya attól függ, hogy a hivatkozott dátum páros, vagy páratlan hétre esik.
A HÉT.SZÁMA függvény megadja a hét számát. Ezt vizsgálja a PÁROSE függvény. IGAZ érték esetén a Páros tartományban keresi a HÉT.NAPJA értéket, HAMIS-nál a másikban.
Ezt a logikát érdemes követni. Láttad, én is felvittem a két táblázatot az Adatok lapra. Nem feltétlenül kell másik lapon lenniük az adatoknak.
-
Delila_1
veterán
válasz
Flowtation
#38995
üzenetére
Másold át a B5 és a C5 képletét az új lap B és C cellájába, majd "húzd le", ameddig kell.
-
Delila_1
veterán
válasz
Flowtation
#38984
üzenetére
Feltettem ide egy megoldást.
-
Delila_1
veterán
válasz
Dinter
#38951
üzenetére
Adj az oszlopnak címet, legyen az A1 cella Név. A B1 legyen pl. összeg. Most a páratlan sorok lettek szövegesek, a párosak pedig számok.
B2-be: =A3
Jelöld ki együtt a B2 és B3 cellát, majd másold le addig, ameddig valamilyen adatod van az A oszlopban.
Most jelöld ki a teljes B oszlopot, másold, a kijelölést nem változtatva irányított beillesztés, értéket.Állíts be autoszűrőt a 2 oszlopodra. Adatok menü, szűrő. Szűrd a B oszlopot az üresekre. Jelöld ki a szűrt sorokat, teljes sorok törlése. A szűrést visszaállítva az összes kijelölésére már meg is van.
Tovább tart a leírás, mint a végrehajtása.
-
Delila_1
veterán
-
Delila_1
veterán
válasz
user112
#38912
üzenetére
Jelöld ki a táblázat sorát úgy, hogy a törlendő sor első oszlopa fölé mutatsz. Mikor fekete, jobbra mutató nyíl alakú lesz a kurzor, kattintasz. A Ctrl és a mínusz billentyű együttes lenyomására törlődik a sornak az a része, amelyik a táblázatodban van. Tehát ha a táblázatod például az A:F tartományban van, akkor a következő oszlopokban megmaradnak az adatok a törölt sorban.
-
Delila_1
veterán
válasz
botond187
#38907
üzenetére
Irányított, más néven speciális szűréssel oldhatod meg. Adatok | Rendezés és szűrés | Speciális.
A G1:H2 tartomány adja a szűrés feltételeit. A két feltétel ÉS kapcsolatban áll egymással.
Látod, ahova kigyűjtöd a feltételeknek megfelelő rekordokat, nem kell azonos sorrendben lenniük az oszlopoknak, mint a forrásnál. Nem is szükséges minden oszlopot megjeleníted. -
Delila_1
veterán
Bocsi, csakis a lényeget nem írtam le.
A kimutatásban állva létrehozol egy számított mezőt. Beállítások | Képletek | Számított mező. Itt címet adsz neki, ami nálam Százalék. Képletnek megadod az érték2 / érték1-et. Az új mezőt behúzod a Kimutatás mezőlista értékeihez, és százalékra állítod a statisztika módját.
-
Delila_1
veterán
válasz
LED333
#38875
üzenetére
Az elsőre a válasz, hogy a laphoz kell rendelned egy makrót. Ennek a módját megtalálod a Téma összefoglalóban.
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Column = 1 And Target > "" Then
Sheets(2).Select
ActiveSheet.Shapes(Target).Select
End If
End SubNálam a terméknevek az A oszlopban vannak. A második lapon lévő képek nevei megegyeznek az első lap termékneveivel.
Ha a neveket tartalmazó lapon nem az A oszlopban vannak a nevek, akkor az If Target.Column = 1 -nél írd át az 1-et annyira, ahányadik oszlopra kattintást kell figyelnie a makrónak.
Ha a képek nem a 2. lapon vannak, akkor a Sheets(2).Select sorban kell átírnod a 2-t.A füzetet makróbarátként (xlsm) kell mentened.
Most nem ugrik be a második kérdésedre a válasz, de majdcsak jön valaki, aki kapásból tudja.

-
Delila_1
veterán
válasz
wednesday
#38868
üzenetére
A sok jelölőnégyzet jócskán megnöveli a fájl méretét. Alkalmazd a lappy által javasolt x-et, vagy van lehetőség a pipa beírására is.
Az oszlopot, ahova a pipát akarod tenni, Wingdings, félkövér karakterre állítsd, és mikor kész a sor, egy ü betűt írj ide.
Nekem a personalban (lásd a Téma összefoglalót) van egy nyúlfarknyi makróm, amihez a gyorselérési eszköztárra kitettem egy ikont. Ott – csodák csodája – a módosításnál rendelhettem hozzá egy pipa alakú ikont. A cellán állva rákattintok az ikonra, mire betesz egy kék pipát a kiválasztott cellába.
Sub Pipa()
ActiveCell = "ü"
With Selection.Font
.Name = "Wingdings"
.Bold = True
.ColorIndex = 5
End With
End SubA colorindexet 3-ra állítva piros lesz a pipa színe.
-
Delila_1
veterán
válasz
pero19910606
#38865
üzenetére
Nézd meg EZT, és az előzményét!
Ez a te táblázatodra is vonatkozik. Eszerint érdemes az adatokat beírnod, ha nem akarod minden bővítésnél a kimutatást is átalakítani.
-
Delila_1
veterán
A dátumot a SZÖVEG függvény segítségével formázhatod az összefűzésben.
Az egyéb formázásokat csak úgy tudod végrehajtani, ha az összefűzés eredményét értékként beilleszted saját magára.
A 32473-as hozzászólásoktól láthatsz példákat makrós formázásokra, de rákereshetsz az ActiveCell.Characters kifejezésre is.
-
Delila_1
veterán
válasz
molnarbalazs
#38797
üzenetére
Szerintem a 38782-es válasz jó volt. Ekkor pluszban kérted, hogy a munkaadót is egyeztetni kell, amit megkaptál a 38784-ben. Erre írtad, hogy valami nem stimmel, újra felteszed a fájlt, de azóta sem tetted fel.
Abból, hogy nem stimmel valami, nem sokra lehet menni.
-
Delila_1
veterán
válasz
molnarbalazs
#38783
üzenetére
=ÉS(DARABTELI($B1:$B5;$B5)=5;DARABTELI($C1:$C5;$C5)=5;$D1:$D5="Alkalmi") -
Delila_1
veterán
válasz
molnarbalazs
#38780
üzenetére
Az ötödik sortól kezdve vidd be a feltételes formázást az A:D oszlopokra.
=ÉS(DARABTELI($B1:$B5;$B5)=5;$D1:$D5="Alkalmi") -
Delila_1
veterán
-
Delila_1
veterán
válasz
bteebi
#38760
üzenetére
NE legyen mindenre külön lap!
Minden adatot vigyél fel egy lapra, folyamatosan, majd alakítsd táblázattá (beszúrás, táblázat).A felvitelnél nem kell figyelned arra, hogy a dátumok, a projektek, vagy bármi más valamilyen rendszer szerint történjen.
A táblázatban állva Beszúrás, Kimutatás, Kimutatás. A megjelenő ablakban legyen az elrendezés
Ilyen lesz a kimutatásod
Minden mező (Dátum, Hét, Munkavállaló, Projekt, Tevékenység, és még a Munkaidő is) szűrhető.
Mikor felvittél egy csapat adatot, a kimutatáson állva jobb klikk, Frissítés. Ha megfogadtad, hogy eleve táblázattá alakítod a listádat, nem kell mást tenned.Szerk.: nálam a C2 képlete az adatoknál: =WEEKNUM(B2;2)
-
-
Delila_1
veterán
válasz
szabonorbkk
#38740
üzenetére
Szívesen.

-
Delila_1
veterán
válasz
szabonorbkk
#38738
üzenetére
Igen, a Solver a megoldás.
Az A oszlopban vannak az összegek, mellettük a B-t feltöltöttem nullákkal, a C1 képlete =A1*B1, ezt lemásoltam. A C16 összegzi a C1:C15 tartományt. G5-ben van a kívánt összeg, de erre nem lehet hivatkozni, csak be kell írni az összeget a Solverbe.
Előre besárgítottam az A oszlopban azokat az összegeket, amik kiadják a G1 értékét, de a Solver másik megoldást adott, amint az első képen látod.
-
Delila_1
veterán
válasz
BalanceR
#38735
üzenetére
Legyen mindkét füzet megnyitva. Nálam a Füzet1.xlsm-ben van a makró, modulban, a másik neve Füzet2.xlsx.
Mindkét füzetben Munka1 a lap neve, és címsort feltételezek.Sub Egyeztet()
Dim sor As Long, usor As Long
Dim WS1 As Worksheet, WS2 As Worksheet, talal
Set WS1 = Workbooks("Füzet1.xlsm").Sheets("Munka1")
Set WS2 = Workbooks("Füzet2.xlsx").Sheets("Munka1")
WS1.Activate
usor = Range("A" & Rows.Count).End(xlUp).Row
For sor = usor To 2 Step -1
On Error Resume Next
talal = Application.Match(Cells(sor, 1), WS2.Columns(1), 0)
If IsError(talal) Then
Rows(sor).Delete Shift:=xlUp
On Error GoTo 0
Else
Cells(sor, 9) = WS2.Cells(talal, 9)
End If
Next
End Sub -
Delila_1
veterán
-
Delila_1
veterán
válasz
Flowtation
#38663
üzenetére
Egyszerűbb összeállítani, mint elmagyarázni. Feltettem a fájlt ide.
-
Delila_1
veterán
-
Delila_1
veterán
válasz
#62169858
#38601
üzenetére
A helyedben a következőt tenném:
A területre, ahova az időket kell beírnod, érvényesítést tennék. Lista, a forrás 5;7;12
Három makróval adnám meg a cellák formázását.
Sub Nappal()
Selection.NumberFormat = """N""0"
End SubSub Ejszaka()
Selection.NumberFormat = """E""0"
End SubSub Mozgo()
Selection.NumberFormat = """M""0"
End SubA makrókhoz ikont rendelnék a gyorselérési eszköztárra. Az eszköztár jobb oldalán lévő nyílon katt, További parancsok. A Választható parancsok helye Makrók. Balra egyenként kiválasztanám, és a Felvétel gombbal átmásolnám ezeket a jobb oldali táblába. Mikor megvan, mindegyikhez rendelnék egy ikont, pl. a nappalhoz vil. kék négyzetet, az éjszakához feketét, és a mozgóhoz fehéret.
A táblázat adott pontján kiválasztod a három engedélyezett (5, 7, 12) értéket, majd az ikonra kattintva megjelenik a megfelelő betű a szám előtt. Az összegzés egy sima SZUM.
-
Delila_1
veterán
válasz
MCMLXXXII
#38557
üzenetére
Ha az előző makró nem működött mobilon, ez sem fog.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column > 4 And Target.Row Mod 2 = 0 Then
ActiveSheet.Protect UserInterfaceOnly:=True
Application.EnableEvents = False
If IsNumeric(Target) And Target.Count = 1 Then
Target.Offset(1) = Format(Now, "yyyy.mm.dd h:m")
Range(Target.Address).Locked = True
Range(Target.Address).Offset(1).Locked = True
End If
Application.EnableEvents = True
End If
End SubA makró figyeli, hogy a páros sorokban az E oszloptól kezdődően szám legyen, ekkor az alatta lévő sorba beírja az aktuális dátumot és időt, majd zárolja a beírt szám és idő celláját.
-
Delila_1
veterán
válasz
Winner_hun
#38540
üzenetére
Ctrl és + jelre előjön a beszúrás menü, ahol cellákat, vagy teljes sort szúrhatsz be. Ctrl és mínusz az ellenkezője.
-
Delila_1
veterán
válasz
pero19910606
#38529
üzenetére
Gondolom, az csak a mintaként megadott értékeknél van úgy, hogy a 2 cikkszám megegyezik.
M-mel kezdődő adatok képlete
=IF(LEFT(VLOOKUP($A2;[Munkafüzet1]Munka1!$A:$B;2;0);1)="M";VLOOKUP($A2;[Munkafüzet1]Munka1!$A:$B;2;0);"")S-sel kezdődő adatok képlete
=IF(LEFT(VLOOKUP($A2;[Munkafüzet1]Munka1!$A:$B;2;0);1)="S";VLOOKUP($A2;[Munkafüzet1]Munka1!$A:$B;2;0);"")Az eredeti adatok a Munkafüzet1 fájl Munka1 lapján, az A és B oszlopban vannak, a másik füzet A oszlopa tartalmazza a keresendő cikkszámokat.
-
Delila_1
veterán
válasz
customer114
#38508
üzenetére
Egy modulba másolt makró elintézi. A lap neve, ahonnan másol: Munka1, a másik lap Nyomtatás névre hallgat nálam.
Sub Nyomtatashoz()
Dim innen As Long, ide As Long, hanyszor As Long, db As Long
Sheets("Munka1").Select
innen = 1 'ha címsorod van a Munka1 lapon, akkor innen=2
With Sheets("Nyomtatás")
Do While Cells(innen, "A") <> ""
hanyszor = Cells(innen, "A")
ide = .Range("A" & Rows.Count).End(xlUp).Row + 1
db = 0
Do While db < hanyszor
.Cells(ide, "A") = Cells(innen, "B")
db = db + 1: ide = ide + 1
Loop
innen = innen + 1
Loop
End With
End SubA füzetet makróbarátként kell elmentened.
Új hozzászólás Aktív témák
- MEGA AKCIÓ! - Jogtiszta Windows - Office & Autodesk & CorelDRAW - Azonnal - Számlával - Garanciával
- Vírusirtó, Antivirus, VPN kulcsok GARANCIÁVAL!
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! Automatikus 0-24
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- ÁRGARANCIA!Épített KomPhone i5 14400F 32/64GB DDR5 RTX 5060 Ti 8GB GAMER PC termékbeszámítással
- 152 - Lenovo LOQ (15IRH8) - Intel Core i5-12450H, RTX 4060 (ELKELT)
- Samsung Galaxy Watch 5 Pro 45mm, GPS, 1 Év Garanciával
- Egyedi ékszerdobozka
- Beszámítás! Asus TUF A17 FA707RR FHD Gamer notebook - R7 6800H 16GB DDR5 512GB SSD RTX 3070 8GB W11
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest



