Telefonszámunk: 1-472-0679

Adatkezelés - Szűrés

Oszlopok sorrendjének változtatása villámgyorsan – szűréssel!?

Í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.

Minta oszlopsorrend

Minta táblázat

Hibas-sorrend

Hibás-sorrend

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

Probléma ha makrózni akarjuk: Nem tudjuk előre azt, hogy mely oszlopokat és hová kell tenni a javítás során.

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.

oszlop-sorszamok

Helyes oszlop-sorszámok a táblázat tetején

  • Data -> Sort -> Options -> Left to Right
  • Adatok ->Rendezés ->Beállítások ->Balról jobbra
Oszlopok rendezése

Oszlopok rendezése

Sor-szerinti-rendezes

Sor-szerinti-rendezes

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.

Probléma ha makrózni akarjuk: Ha az oszlopnevek nem egyeznek meg az aktuális riportban a rögzített oszlopnevekkel. Ebben az esetben a Match függvény nem fogja megtalálni a nevet, és a helyes sorszám helyett hibát ad vissza.

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.

  1. Kijelöljük vagy aktiváljuk a Riport táblázatot
  2. Elindítjuk az irányított szűrőt
    Iranyitott-szuro
  1. Beállítjuk az alábbiak szerint, és az eredmény a jó fejléc szerinti oszlopsorrend lesz
    Iranyitott szuro beallítas
Irányitott szűrő beállítás

Ha nem adunk meg minden oszlopot, akkor csak a megadottakat fogja átmásolni!

Probléma ha makrózni akarjuk: Ha az aktuális riportban lévő oszlopnevek bármelyike nem egyezik meg a rögzített oszlopnévvel. Ebben az esetben nem fog működni.

Letölthető minta dokumentum: oszlop_sorrend_modositas.xlsx

Mindez működés közben

  • Oszlopsorrend változtatása

Tovább...

Adatok másolása szűrt táblázatba

Gyakran látom a különböző Excel fórumokon azt a kérdést, hogy hogyan lehet adatokat beilleszteni egy olyan táblázatba, amelynek vannak elrejtett sorai? Ez leginkább szűrés alkalmával fordul elő. Tehát azt szeretnénk, hogy a szűrt táblázat egyik oszlopának egy kijelölt tartományába, egy másik tartományból másolhassunk adatokat.

A forrás és a céltartomány ugyanabban a táblázatban van

Sajnos erre a kérdésre nem is olyan egyszerű a válasz (de legalább van), mert az Excel nem igazán van felkészítve ilyesmi feladatra. Nézzük mi történik akkor, ha megpróbáljuk a szokásos beillesztést (CP=Copy-Paste)

  1. Szűrjük a táblát
  2. Kijelöljük a másolandó tartományt ->Másolás(Ctrl+C) Ezt tehetjük a szokásos módon, vagy a speciális kijelölés->Csak a látható cellák (Visible cells only)
  3. Kijelöljük a céltartományt (lényeges, hogy mérete megegyezzen a forráséval)
  4. Beillesztés (Ctrl+V)

Az eredmény

hiba1

Ugyanezt az üzenetet kapjuk akkor is, ha megpróbáljuk átvontatni a forrástartományt a céltartományra. Ha nem jelöljük előre ki a céltartományt, csak az első celláját, akkor pedig az történik, hogy a beillesztés a nem látható (szűrt) cellákba is megtörténik. ezt pedig semmiképpen nem szeretnénk.

hiba2

A megoldás

Szűrt állapotban a céltartomány celláiból át kell hivatkozni a forrástartomány celláira, majd érték beillesztéssel megszüntetni  a képletet. Ez csak akkor működik biztonságosan, ha ugyanabban a táblázatban van a két tartomány, és így biztosított, hogy közösek az elrejtett sorok.

megoldas

A forrás és céltartomány különböző táblázatban van

Ebben az esetben az sem biztos, hogy a forrás tartomány is szűrt, de ha igen, az valószínűtlen, hogy ugyanazok a sorok lesznek rejtettek, mint a céltartomány esetén. Erre a helyzetre az Excel felület nem kínál megoldást, tehát makrót (VBA kódot) kell készíteni. Ebben első lépésként meg kell vizsgálni, hogy a forrás és a céltartomány látható (nem szűrt) sorainak (és oszlopainak)  száma megegyezik-e, majd soronként másolhatunk úgy, hogy a céltartományban csak a látható sorokba illesztjük a forrás tartomány aktuális látható sorát. A Videóban látható mindez kicsit bővebben.

Következő rész: A makrós megoldás

Letölthető munkafüzet: beillesztes-szurt-tartomanyba

  • Nézzük, hogy lehet adatokat másolni csak a látható cellákba

Tovább...

Táblázatok az Excelben

Ezt a funkciót az Excel 2003-ban mutatták be, ott Lista néven működött. Az Excel 2007-től fölfelé átnevezték Táblázat (Table) funkcióra, ami a magyar Excel esetében kissé zavaró, mert a programot magát „Táblázatkezelő”-nek nevezzük.

Emiatt ebben az anyagban Adattábla nevet fogunk használni.

Sok előnye és kevés hátránya van a használatának, ezeket nézzük most meg.

Adattábla  definiálása

Az adattábla egy Fejléccel, és adatsorokkal rendelkező, elkülöníthető tartomány. Elég gyakran egy munkalapon egy ilyen van, de nem biztos, hogy adattáblaként használjuk. Egy tartományt adattáblaként szeretnénk használni, tegyük a következőket:

  1. Jelöljük ki az átalakítandó tartományt (Ctrl+A)
  2. Alakítsuk táblázattá:  Kezdőlap->Formázás Táblázatként vagy Beszúrás->Táblázat
  3. Adjuk meg,a tartományt, és állítsuk be, hogy az első sort fejlécként kezelje-e
    Excel-tablazat-tartomany-megadasa
  4. Választhatunk a rengeteg beépített formátumból

Amikor befejeztük a folyamatot, a tartományunk átalakul, és valószínűleg valami hasonlót látunk

Excel-tablazat-eredmeny

Az adattábla extra funkciói

  1. A fejléc átalakul
    Megjelenik az autoszűrő, és egyben rögzül is a fejléc, azaz lefelé gördítéskor nem tűnik el.
  2. Egyszerűen lehet sorokat, oszlopokat és az egész adattáblát kijelölni
    Az oszlop vagy sor elején, illetve a sarkán megváltozik az egérmutató, és csak az adattábla tartományában jelöl ki annak megfelelően. Ez képletek bevitelekor is működik.
    Adattabla-sorainak-es-oszlopainak-kijeloleseTeljes-Adattabla-kijelolese
  3. Karbantartja a táblát
    Az új sorokat és oszlopokat automatikusan az Adattábla részévé teszi, kiterjeszti, megtartva a beállított formátumot akkor is, ha sorokat vagy oszlopokat szúrunk be vagy törlünk.  (Hacsak ezt ki nem kapcsoljuk az automatikus javítási beállításokban.)
  4. Képletek automatikus kitöltése
    A táblázaton belül egy új oszlopban elég egy cellába megadni a képletet, az automatikusan kitöltődik az egész oszlopra. (Hacsak ezt ki nem kapcsoljuk az automatikus javítási beállításokban.)Table-autocorrect
    Excel beállítások->Nyelvi Ellenőrzés (Proofing)->Atomatikus javítási beállítások
  5. Rugalmas adatforrás (legfontosabb)
    Ha egy Grafikont vagy akár PIVOT táblát egy adattáblára alapozunk, akkor azok követik a forrás, azaz az adattábla méretének változásait, az esetleg hozzá jött plusz sorokat frissítés után automatikusan megjelenítik.
  6. Képletek megjegyzése
    Ha kiürítjük  atáblázatot, azaz minden sorát töröljük a fejléc kivételével, a bene lévő képletekre akkor is emlékezni fog, és az eéső sor felvitelekor újra ott lesznek. Ha valaki kíváncsi, hogy miért, akkor olvassa el ezt a cikket.

Az adattábla saját szalagja és lehetőségei

Ha egy tartományt adattáblaként definiáltunk, akkor bármely cellájára kattintva megjelenik egy új menüpont a szalag felett (Táblázat Eszközök / Table Tools). Ezt kiválasztva dolgozhatunk az adattábla saját szalagján. A legtöbb beállítás magáért beszél, ezért most nem térünk ki rá részletesen.

Tablazat-szalag

Az adattábla neve – mérete

Tabla-neve-meretezes

Az adattábla nevét érdemes megadni, hogy beszédesebb neve legyen az alapértelmezettnél. A táblázat átméretezése (amennyiben automatikusan nem teszi meg) is lehetséges, ilyenkor egyszerűen csak megadjuk az új tartományt.

Visszaalakítás tartománnyá

Bizonyos funkciók nem működnek akkor, amikor egy tartományt adattáblaként használunk. Ebben az esetben a Tools csoport „Átalakítás tartománnyá (Convert to Range) parancsát használhatjuk. A tartomány megőrzi az adattábla formátumát (pl csíkok) de már nem hordozza tovább az elérhető funkciókat.

Összegsor (Total Row)

ha bekapcsoljuk, akkor a táblázat alján megjelenik egy új , összegző sor. Ebben a sorban minden oszlophoz egy legördülő menüből választhatunk összesítő függvényt (Szum, darab, átlag, stb..), ami a SUBTOTAL függvénnyel működik, emiatt a szűrt adatok esetén az éppen látható sorokra adja az összesítés eredményét.
Table-Total-Row

További funkciók a Video-ban

Az előzőek bemutatásán kívül néhány további érdekességet is lehet látni a következő videóban.

  • Fejléc szövegek igazítása, hogy a szűrő nyilak ne takarják el
  • Csak az adattábla nyomtatása
  • Adatűrlap használata
  • Dinamikus névtartomány

  • Az Excel "Táblázat" funkciója

Tovább...

Haladó szűrési technikák – Szűrőoszlop vagy Irányított szűrő

Előfordulhatnak olyan szűrési feltételek, amelyeket autoszűrővel nem, vagy csak több lépésben tudunk megoldani. Ekkor vehetjük hasznát az egyéni szűrő segédoszlopnak, ahol mi fogalmazzuk meg a szűrési feltételt, vagy segítségül hívjuk az Excel beépített „Irányított” szűrőjét (Advanded Filter)

Bónuszként még az is megtudható a videóból, hogy hogyan kérhetjük a szűrés eredményét egy másik munkalapra.

  • Haladó szűrés Excellel

Tovább...

Az Excel autoszűrő beállításainak mentése

Kevesen tudják, hogy az Excel el tudja menteni az aktuális szűrési állapotot, azaz az autoszűrő beállításait. Sőt, nem csak egy, hanem sok ilyen beállítást menthetünk, így egyik szűrésről a másikra pillanatok alatt tudunk váltani. A sok szöveges magyarázkodás helyett egyszerűbb, ha megnézed az alábbi videót a témáról.

  • A szűrőbeállítások mentése

Tovább...