Íme egy újabb gyöngyszem. Július legvégén volt egy Excel VBA kurzusom, ahol arra szoktam buzdítani a résztvevőket, hogy bátran hozzanak saját problémákat, és ha belefér, megoldjuk őket, vagy legalább hozok rá elvi vagy gyakorlati megoldást a tanfolyamon. Milu azzal állt elő, hogy rendszeresen kap egy bizonyos riportot, ami mindig ugyanazokat az oszlopokat tartalmazza, de gyakran eltérő oszlop sorrendben. Mivel az lenne a feladat, hogy a kapott riportokat egy eredményfájlba gyűjtse, aminek az oszlopsorrendje adott,a másolás előtt az aktuálisan kapott riportot a gyűjtőfájl oszlopsorrendjéhez kell igazítani. Mivel ismétlődő a feladat, jó lenne lemakrózni, hogy automatikusan futhasson. Kell tehát találni egy olyan megoldást, ami függetlenül az aktuális oszlopsorrendtől, mindig egy előre rögzített sorrend alapján elkészít egy másolatot, majd azt a gyűjtőfájl végére fűzi.
Ebben az anyagban kiemeltem az oszlopsorrend változtatására a lehetséges módszereket.
Sorrend változtatás vontatással vagy vágólappal
- Kivágás -> Kivágott cellák beszúrása (Cut ->Paste Cut cells) vagy
- Shift+vontatás
Módosítás az oszlopok rendezésével
Mivel az Excel a 2007-es verziótól képes valamely sor alapján rendezni az oszlopokat, megoldás lehet, ha a helyes sorrendet az aktuális oszlopnevek fölé képezzük (kézzel vagy képlettel), majd a kapott számok alapján átrendezzük az oszlopokat.
- Data -> Sort -> Options -> Left to Right
- Adatok ->Rendezés ->Beállítások ->Balról jobbra
A helyes oszlop sorszámokat kézzel vagy a Hol.Van (Match) függvénnyel állíthatjuk elő. A Videóban megmutatom ezt a megoldást is.
Módosítás az irányított szűrő (Advanced Filter) segítségével
Ezt a megoldást Márti gyűjtőmunkájának köszönhetjük. Ebben az esetben az aktuális riport táblázat mellé vagy alá, akár másik munkalapra feltesszük a helyes sorrendű fejlécet, majd alkalmazzuk a speciális vagy irányított szűrőt.
- Kijelöljük vagy aktiváljuk a Riport táblázatot
- Elindítjuk az irányított szűrőt
- Beállítjuk az alábbiak szerint, és az eredmény a jó fejléc szerinti oszlopsorrend lesz
Letölthető minta dokumentum: oszlop_sorrend_modositas.xlsx
Mindez működés közben
Oszlopsorrend változtatása