Folytatva tegnap elkezdett kalandozásunkat a PowerQuery világába, ma ismét egy olyan lehetőséget fogok megmutatni, ami egyáltalán nem bonyolult, megvalósítható Excel funkciók segítségével is, de a PowerQuerys megoldásnál nem nagyon látok egyszerűbbet egy óriási adathalmaz esetén. Adott a következő (leegyszerűsített) kis tábla:
Ahogy látható, üres sorok és értékek összevisszaságából áll, a célunk pedig az értékek kinyerése lenne egyetlen oszlopba, figyelembe véve azt is, hogy egy sorban esetleg több érték is szerepelhet. Első lépésként a táblán állva lépjünk a Data ribbonfülre, majd a Get & Transform Data szekcióból válasszuk a From Table/Range opciót:
Szépen be is töltődött minden a Query Editorba:
Fogjuk és jelöljük ki az összes oszlopot, de legalábbis azokat mindenképpen, amelyeket az egyesítésben szeretnénk figyelembevenni (itt is simán működik a Shift vagy Ctrl segítségével történő kijelölés), majd a Transform ribbonfül alatt keressük meg a Text Column szekciót, azon belül is a Merge Columns funkciót:
A felugró ablakban kiválaszthatjuk az új oszlop nevét, majd azt is, hogy az egy sorban szereplő több érték esetén milyen elválasztót szeretnénk használni:
Én most vesszővel fogom elválasztani az értékeket és az oszlop neve maradt a defaultként felkínált Merged. Ahogy látható, az OK gomb lenyomása után el is készült az új oszlopunk, ami vesszővel elválasztva tartalmazza a többi oszlop értékét. Kattintsunk erre az oszlopra jobb egérgombbal, majd a felugró menüből válasszuk a Split Column lehetőséget, azon belül pedig a By Delimitert:
Ugyebár most azt akarjuk elérni, hogy az oszlopunkban lévő értékeket vesszők nélkül, külön-külön sorokban jelenítsük meg, így a felugró ablakban egyrészt adjuk meg fentebb a vessző delimiter-típust, lentebb pedig azt, hogy sorokba akarjuk rendezni a szétválasztás után az értékeket:
Ezzel már majdnem kész is vagyunk, a query editor ugyanis létrehozta az új oszlopot, annyi problémával, hogy vannak még üres soraink is - ezeket egyszerűen szűrjük ki:
Az így kapott eredményt aztán a Home ribbonfül Close & Load funkciójával töltsük vissza Excelbe:
És meg is van, amit szerettünk volna: