-
IT café
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
Topikgazda
válasz Törpella #20070 üzenetére
Ha jól értem, két oszlopban lévő adat szerint kell keresned egy másik táblázatban. Ehhez érdemes egy új oszlopban összefűznöd a két adatot, közöttük egy szóközzel, vagy alsó kötjellel, vagy egyéb, a cellákban elő nem forduló karakterrel. Erre azért van szükség, mert nélküle a 11 és 111 eredménye 11111-et adna úgy, mint a 111 és 11 összefűzése.
Ha VLOOKUP-pal keresel, akkor a Munka2 lapon előre kell beszúrnod az új oszlopot, és ezt akár el is rejtheted, de teheted az utolsó oszlop után, és akkor az INDEX függvénybe beágyazott MATCH (HOL.VAN) függvénnyel kereshetsz.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Törpella #20159 üzenetére
Feltételezem, hogy mindkét lapon van címsorod.
Sub masolas()
Dim sor As Long, usorA As Long, usorM As Long, WF As WorksheetFunction
Sheets("Adatok").Select
Set WF = Application.WorksheetFunction
usorA = Range("F" & Rows.Count).End(xlUp).Row
For sor = 2 To usorA
If WF.CountA(Range("F" & sor & ":H" & sor)) = 3 And Range("K" & sor) <> "" And _
WF.CountA(Range("P" & sor & ":Q" & sor)) = 2 Then
usorM = WF.CountA(Sheets("Mentett").Columns(1)) + 1
Range("F" & sor & ":H" & sor).Copy
Sheets("Mentett").Range("A" & usorM).PasteSpecial Paste:=xlPasteValues
Range("K" & sor).Copy
Sheets("Mentett").Range("D" & usorM).PasteSpecial Paste:=xlPasteValues
Range("P" & sor & ":Q" & sor).Copy
Sheets("Mentett").Range("E" & usorM).PasteSpecial Paste:=xlPasteValues
End If
Next
End SubProgramozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Delila_1
Topikgazda
válasz Törpella #20181 üzenetére
Az And után legyen egy szóköz, majd az alsó kötjel. Ez jelzi a belső fordítónak, hogy az utasítás folytatódik a következő sorban.
Lehet, hogy a forma csak itt jelenik meg tördelve, és az egyes utasításokat nem tudja értelmezni a VBA. Ezen úgy segíthetsz, hogy a bővítményeknél bekapcsolod a két Analysis kezdetűt. Verziótól függ, hol találod meg ezeket. Ha így sem jönne össze, küldd el privátban a füzetet.
Programozó: hibás programok megírására és kijavítására kiképzett szakember. Többet ésszel, mint ész nélkül.
-
Fferi50
őstag
válasz Törpella #26515 üzenetére
Szia!
Elnézést, amiért csak most válaszolok, de vannak különböző "tavaszi" elfoglaltságaim is.
Ahogy én elnézem, itt nem szűrőről van szó, hanem a megfelelő rowlabel (sorcimke9 kiválasztásáról.
Ezt a következőképpen oldhatod meg (a kód általános, aktualizálhatod magadra, a számok helyére a mező nevét is írhatod természetesen):Sheets(2).Pivottables(1).Pivotfields(1).Pivotitems(kiválaszott).visible=true
For each pi in Sheets(2).Pivottables(1).Pivotfields(1).Pivotitems:pi.visible=pi.caption=kiválasztott: NextEzután az adott pivottáblában már csak a kiválasztott tételed fog látszani.
Az egész táblát (már az eredményt) átmásolhatod egy másik helyre a következő kóddal:
Sheets(2).Pivottables(1).Tablerange1.Copy Destination:=Sheets(3).Range("A1")Ha tudod, hogy hány soros a kiválasztott tételed, akkor
Sheets(2).Pivottables(1).Tablerange1.Rows("3:5").Copy Destination:=Sheets(3).Range("A1")Viszont, ha csak az utóbbi eredmény szükséges, akkor nem kell "szűrni" a pivottáblát. Legyen minden sorcimkéje látható.
A kiválasztottat megtalálod a következőképpen:
set kiv=Sheets(2).Pivottables(1).Tablerange1.Find(what:=kiválasztott,lookin:=xlvalues,lookat:=xlwhole)
másolása:
sheets(2).Pivottables(1).Tablerange1.Rows(kiv.row-sheets(2).Pivottable(1).Tablerange1.Cells(0,1).Row).Copy Destination:=Sheets(3).Range("A1")Még egy megjegyzés: Úgy gondolom, szerencsésebb lenne, ha a lekérdező formon mutatnád a listát, hogy miből lehet választani, mert akkor biztosan nem lesz hibás találat. Ehhez egy dropdown vagy listbox control kell, amit a pivotokból tudsz feltölteni a kiválasztható értékekkel.
Mivel úgy látom elég sok rowlabel van és azok mind "alá vannak rendelve" a fő labelnek, természetesen a másoladó sorok száma is aszerint alakul, ahány label van.
Üdv.
[ Szerkesztve ]
-
cekkk
veterán
válasz Törpella #26556 üzenetére
Köszönöm!
A saját lista állandó, a beszállítói meg nem, mivel mindig változik mi van készleten, ezért kellene naponta frissíteni nekem is, mert egyik nap valamiből van, másik nap nincs.
Most beírtam ezt a képletet IFERROR(IF(VLOOKUP(A1;'Munka2'!A$1:A$307;1;0);"1";"0");"0")
De csak anyit ír ki, hogy #Név? ez miért van?[ Szerkesztve ]
-
huliganboy
addikt
válasz Törpella #26593 üzenetére
Szia!
Először is köszi!
Mi van abban az esetben ha egy oktatónak egy napon a három eseményen kívül, egy kettő vagy egy eseménye sincs?
Illetve Ha megnézed az első oktatót akkor nem három sorba kell felvinni a másik táblázatba, hanem 14 sorba, ami hétről hétre változik annak függvényében egy nap hány foglalkozás van.... Legrosszabb esetben heti 21....
Új hozzászólás Aktív témák
- Windows 10 11 Pro Office 19 21 Pro Plus Retail kulcs 1 PC Mac AKCIÓ! LEGOLCSÓBB! Automatikus 0-24
- Adobe Creative Cloud - 2024. 04. 05 - 2025. 04. 05-ig
- Windows 10/11 Home/Pro , Office OEM/Retail kulcsok
- Számlás!Steam,EA,Epic és egyébb játékok Pc-re vagy XBox!
- Bitdefender Total Security 3év/3eszköz! - "Tökéletes védelem most kedvező áron..."
Állásajánlatok
Cég: Alpha Laptopszerviz Kft.
Város: Pécs
Cég: Ozeki Kft.
Város: Debrecen