adatbázis-kezelő függvények

2019-01-22    Excel 2016
Nem is függvények, inkább függvény-család. Igen. Tizenkét függvény, egy család. Nevük az „AB.” karakterekkel kezdődik. Funkciójuk azonos: az adatbázis-táblázat egy mezőjének statisztikai elemzése. Argumentumaik is azonosak. Sorrendben a következők: az adatbázis-táblázat-, az elemzendő mező- és az elemzendő rekordok körét meghatározó szűrő-tartomány.
az AB függvény-család tagjai
Az adatbázis-kezelő függvények első argumentuma az elemzendő adatbázis-táblázat deklarációja. Ha a névkiegészítővel dolgozunk, akkor az adatbázis-táblázat neve után üssünk egy nyitó szögletes zárójelet és a listából válasszuk #Mind tételt. Ha a kijelöléses képletszerkesztést preferáljuk, akkor kattintsunk kétszer a negyvenöt fokos nyíllal az első mezőnév cellájára.
az AB függvény-család tagjainak első argumentuma
Az adatbázis-kezelő függvények második argumentuma a statisztikai mező, vagy más szóval az elemzendő mező deklarációja. Ez lehet a mező neve vagy belső azonosítója vagy sorszáma vagy a nevét tartalmazó cella hivatkozása.
az AB függvény-család tagjainak második argumentuma
A függvény-család tagjainak harmadik argumentuma egy tartomány deklaráció. Ebben a tartományban állnak a felhasználó által megszerkesztett szűrő feltételek, amelyek meghatározzák a függvény hatókörét, magyarul: azokat a rekordokat, amelyeket vizsgálni szeretnénk. Ez tehát a szűrő tartomány.
De Tanító bácsi! Miért kell egy újabb szűrő-rendszer, amikor az adatbázis-táblázatnak van saját belső- és külső szűrő-modulja is? Azért Pistike, mert a táblázat szűrőit ezek a függvények nem veszik figyelembe. Ez a megoldás persze plusz munkával jár, de a fáradtságért cserébe újabb lehetőségeket kapunk: [1] egy mezőhöz több feltételt is meghatározhatunk, [2] képleten alapuló feltételt is létrehozhatunk, [3] bonyolult feltétel-rendszert alakíthatunk ki, [4] több szűrő tartománnyal is dolgozhatunk, amelyek között a képlet átírásával egyszerűen válthatunk és végül [5] a létrehozott szűrő-rendszert a munkafüzettel együtt menthetjük.
A szűrő tartomány helyét a munkafüzetben szabadon választhatjuk meg, sőt még másik munkafüzetet is használhatunk erre a célra. A mezőneveket a tartomány első sorába kell begépelni vagy bemásolni. Egy mező többször is szerepelhet. A szűrő tartományban a mezők tetszőleges sorrendben követhetik egymást. A mezőnevek sorában áll a képleten alapuló feltétel neve is, amelyet a felhasználó ad meg.
A feltételeket annak a mezőnévnek az oszlopába kell begépelnünk, amelynek bejegyzéseit szelektálni akarjuk. Az egy sorban álló feltételek ÉS, a különböző sorokban állók VAGY logikai viszonyban állnak egymással. Nézzünk egy-két példát!
az AB függvény-család tagjainak harmadik argumentuma
A képen látható adatbázis-táblázatot három adatbázis-kezelő függvénnyel elemeztem. A függvények szűrő tartományait a táblázat alatt láthatjuk. Balról jobbra haladva, először a bajaiak és a tataiak, azután a negyvenes éveikben járók és végül az egri nők rekordjait elemeztem. Az egyenlőségjellel kezdődő szövegkonstansokat így kell beírnunk: =”=szöveg”. A függvények harmadik argumentuma, a kép szerint, sorrendben: H8:H10; J8:K9; M8:M9.
Egyesítsük a három szűrő tartomány feltételeit! Lépésenként haladva megismerkedhetünk a feltétel-rendszer tulajdonságaival. Dolgozzunk az AB.DARAB függvénnyel, amelynek második argumentuma a szszám (személyi szám) mező legyen!
az AB függvény-család tagjainak harmadik argumentuma
A bal oldali szűrő tartomány a bajai negyvenesek és az összes tatai rekordot határoza meg. A középen álló szűrők a bajai és tatai negyvenesek rekordjait adják eredményül. A jobb oldali tartomány szűrői pedig a bajai és a tatai negyvenesek, plusz az egri nők rekordjait eredményezik.
A szűrő tartományban, szabadon választott, felhasználói névvel, képleten alapuló szűrést is meghatározhatunk. A kifejezés eredményének logikai típusúnak kell lennie. A képletet az első rekord adataival kell megszerkesztenünk. A program ezt a kifejezést fogja másolni az összes rekordba. Ha az adott rekord adataival történő kiértékelés IGAZ eredményt ad, akkor a rekord bejegyzése szerepel a statisztikai elemzésben, különben nem.
az AB függvény-család tagjainak harmadik argumentuma
A felül a városok adatbázis-táblázatot látjuk. Alatta balra az elemzésére használt két szűrőtartomány, jobbra pedig, a logikai adattípusú eredményt adó képletek állnak. A G4 cellában álló kifejezés azokat a rekordokat határozza meg amelyekben a szül.hely és a lakhely mezők bejegyzése azonos. A második szűrőtartomány I4-es és I5 képlete a legnagyobb kereset kilencven százalékánál nagyobb és a háromszáz ezernél kisebb keresetek rekordjait definiálja. Az elemzéshez használt adatbázis-kezelő függvények harmadik argumentuma: G3:G4 és I3:I5.
Ahogy láttuk a szűrő tartomány üres cellájának jelentése: itt nincs beállítva feltétel. De akkor felmerül a kérdés, hogyan határozzuk meg az adott mező bejegyzés nélküli celláit. Az egyenlőségjellel. És tartalmuktól függetlenül, a bejegyzéssel rendelkező celláit? Két relációs jellel: nem egyenlő. A nem szöveg konstansok elé az egyenlőségjelet nem kell kitennünk!
az AB függvény-család tagjainak harmadik argumentuma
A lekötések adatbázis-táblázat ötszáz ügyfél adatait tartalmazza. Kíváncsi voltam a lekötéssel rendelkező, a lekötés nélküli, a száz ezer forint lekötéssel rendelkező, a kétezertizennyolc november huszonharmadikai kötéssel rendelkezők és a kiemelt számlatulajdonosok számára. A H6 cellában szerkesztettem meg a képletet, majd másolatokat készítettem róla a szűrő tartományoknak megfelelően.
A feltétel egy relációból és egy konstansból áll. Szöveg adattípusú mező feltételében nyolc reláció fordulhat elő: egyenlő, nem egyenlő, kezdete, nem kezdete, tartalmazza, nem tartalmazza, vége és nem vége. Szöveg-konstansban a program megkülönbözteti a kis- és nagybetűket. A feltétel-szöveg joker karaktereket (? *) is tartalmazhat. A joker kerekterek helyettesítő funkcióját a hullám karakterrel (~) törölhetjük. Magyarul, ha a bejegyzés kérdőjel tartalmát „keressük”, akkor „~?” kell írnunk.
az AB függvény-család tagjainak harmadik argumentuma
Ahogy látjuk, az egyenlő és a vége relációt használva a beírás eltér a megjelenítéstől. Ha csak a végeredményt gépeljük be a cellába, akkor hibaüzenetet kapunk!
Végül beszéljünk az AB.MEZŐ függvényről. Ő egy kicsit kilóg a sorból, mert nem statisztikai vizsgálatot végez, hanem a második argumentumaként megadott mező bejegyzését adja eredményül, a feltételekkel meghatározott egyetlen rekordból. Ha a program nem talál a feltételeknek megfelelő rekordot, akkor az #ÉRTÉK!, ha több rekordot is talál, akkor a #SZÁM! hibaértéket adja eredményül. Kérdezzünk le néhány adatot a SzülDátumok adatbázis-táblázatból! [1] Ki született ezerkilencszázötvenhárom október negyedikén? [2] És ki ezerkilencszázhetvenöt január tizenkettedikén? [3] Mikor született Rezeda Kázmér?
az AB.MEZŐ függvény
Az első két kérdésre a kép alján álló képlet ad választ. Az első kérdés megválaszolása után (Tóth Sára) csak a dátumot kell módosítani a szűrő tartományban. A második kérdésre a program nem ad választ, mert a függvény harmadik argumentuma több rekordot határozott meg. Ezért kaptuk az #SZÁM! hibaértéket eredményül. A harmadik kérdés megválaszolásához a függvény harmadik argumentumát kellett módosítani H3:H4-re. Az eredmény az #ÉRTÉK! lett, mert Rezeda Kázmér bejegyzést nem talált a program a név mezőben!
margitfalvi.arpad@proton.me