Útmutatások és példák tömbképletek használatához
Applies ToMicrosoft 365-höz készült Excel Microsoft 365-höz készült Mac Excel Excel 2024 Mac Excel 2024 Excel 2021 Mac Excel 2021 Excel 2019 Excel 2016 iPad Excel iPhone Excel

A tömbképletek olyan képletek, amelyek egy tömb egy vagy több elemén több számítást is végrehajthatnak. Egy tömbre lehet értéksorként, értékoszlopként vagy értéksorok és -oszlopok kombinációjaként tekinteni. A tömbképletek több vagy egyetlen eredményt adhatnak vissza.

A Microsoft 3652018. szeptemberi frissítésétől kezdődően minden olyan képlet, amely több eredményt adhat vissza, automatikusan kibontja őket lefelé vagy a szomszédos cellákba. Ezt a viselkedésbeli változást számos új dinamikus tömbfüggvény is kíséri. A dinamikus tömbképleteket, akár meglévő függvényeket, akár a dinamikus tömbfüggvényeket használják, csak egyetlen cellába kell beírni, majd az Enter lenyomásával megerősíteni. Korábban a tömbképletekhez először ki kellett jelölni a teljes kimeneti tartományt, majd meg kellett erősíteni a képletet a Ctrl+Shift+Enter billentyűkombinációval. Ezeket gyakran CSE képleteknek nevezik.

A tömbképletek használatával bonyolult feladatokat is végezhet, például:

  • Mintaadathalmazok gyors létrehozása.

  • Cellatartományban lévő karakterek számának kiszámítása.

  • Csak az adott feltételeknek megfelelő számok összegzése (például meghatározott számtartomány legalacsonyabb, felső és alsó határérték közé eső értékei).

  • Értéktartomány minden n-edik értékének összegzése.

A következő példák a többcellás és az egycellás tömbképletek létrehozásának módját mutatják be. Ahol lehetséges, példákat is felsoroltunk néhány dinamikus tömbfüggvénnyel, valamint a dinamikus és örökölt tömbfüggvényekként beírt meglévő tömbképletekre is.

Példák letöltése

Töltsön le egy példamunkafüzetet, amely a jelen cikkben szereplő összes tömbképlet-példát tartalmazza.

Ez a gyakorlat bemutatja, hogyan használhat többcellás és egycellás tömbképleteket értékesítési számok halmazának számításaihoz. Az első lépéshalmaz egy többcellás képlettel számítja ki a részösszegek halmazát. A második készlet egy egycellás képlettel számítja ki a végösszeget.

  • Többcellás tömbképletek

    Többcellás tömbfüggvény a H10 cellában =F10:F19*G10:G19 az egységáron eladott autók számának kiszámításához

  • Itt kiszámítjuk a kupék és szedánok összes eladását az egyes értékesítők esetében a következő adatok megadásával: =F10:F19*G10:G19 a H10 cellában.

    Amikor lenyomja az Enterbillentyűt, a rendszer az eredményeket a H10:H19 cellában bontja ki. Figyelje meg, hogy a kibontott tartományt szegély jelöli, amikor kijelöl egy cellát a kibontott tartományon belül. Azt is észreveheti, hogy a H10:H19 cellákban szereplő képletek szürkén jelennek meg. Ezek csak referenciaként szerepelnek ott, ezért ha módosítani szeretné a képletet, ki kell jelölnie a H10 cellát, ahol a mesterképlet található.

  • Egycellás tömbképlet

    Egycellás tömbképlet a végösszeg kiszámításához a következővel: =SZUM(F10:F19*G10:G19)

    A példamunkafüzet H20 cellájába írja vagy másolja és illessze be a =SZUM(F10:F19*G10:G19) értéket, majd nyomja le az Enter billentyűt.

    Az Excel összeszorozza a tömbben lévő értékeket (a F10–G19 cellatartományban), és a SZUM függvénnyel összeadja az összegeket. Az eladások végösszege 1 590 000 USD.

    Ez a példa jól szemlélteti, hogy mi mindenre használható egy ilyen típusú képlet. Tegyük fel, hogy 1 000 sornyi adat van a munkafüzetben. Az adatok egy részét vagy egészét összeadhatja úgy, hogy egyetlen cellában hoz létre tömbképletet ahelyett, hogy a képletet lefelé húzza az 1 000 soron. Jól látható, hogy az egycellás képlet (a H20 cellában) teljesen független a többcellás képlettől (a H10–H19 cellában lévő képlettől). Ez a tömbképletek másik előnyös tulajdonsága: a rugalmasság. A H oszlopbeli egyéb képleteket anélkül módosíthatja, hogy ez hatással lenne a H20 cellában lévő képletre. Érdemes lehet független összegeket is megadni, mivel ez segít ellenőrizni az eredmények pontosságát.

  • A dinamikus tömbképletek előnyei közé tartoznak még a következők:

    • Konzisztencia    A H10 cellától lefelé bármelyik cellára kattintva ugyanaz a képlet látható. A konzisztencia révén pontosabban végezhető a munka.

    • Biztonság:    A többcellás tömbképletek összetevői nem írhatók felül. Kattintson például a H11 cellára, és nyomja le a Delete billentyűt. Az Excel nem módosítja a tömb kimenetét. A módosításhoz ki kell jelölnie a tömb bal felső celláját vagy a H10 cellát.

    • Kisebb fájlméretek:    Sok esetben egyetlen tömbképlet is elegendő több köztes képlet helyett: a munkafüzet például egy tömbképletet használ az E oszlop eredményeinek kiszámításához. Az autóértékesítési példa például egy tömbképletet használ az E oszlop eredményeinek kiszámításához.Ha szokásos képleteket használt volna (például =F10*G10, F11*G11, F12*G12 stb.), akkor 11 különböző képlet adta volna ugyanazt az eredményt. Ez nem nagy dolog, de mi a teendő, ha több ezer sort kell összegeznie? Ez nagy különbséget jelenthet.

    • Hatékonyság:    A tömbfüggvények használata hatékony megoldás lehet összetett képletek létrehozására. A =SZUM(F10:F19*G10:G19) tömbképlet megegyezik a következővel: =SZUM(F10*G10;F11*G11;F12*G12,F 13*G13,F14*G14,F15*G15,F16*G16,F17*G17,F18*G18,F19*G19).

    • Kibontás    A dinamikus tömbképleteket a rendszer automatikusan kibontja a kimeneti tartományba. Ha a forrásadatok egy Excel-táblázatban találhatók, akkor a dinamikus tömbképletek esetén a tömb mérete automatikusan módosul, amint adatokat vesz fel vagy távolít el.

    • #KIBONTÁS! hiba    A dinamikus tömbökkel bevezetésre került a #KIBONTÁS! hiba, ami jelzi, hogy a kívánt kibontandó tartomány valamilyen okból le van tiltva. Ha feloldja az akadályt, a képlet automatikusan kibomlik.

A tömbképletek tömbkonstansokat is magukban foglalnak. Tömbkonstansok létrehozásához be kell írni egy elemlistát, és kézzel kell kapcsos zárójelek közé ({ }) zárni azt a következő módon:

={1\2\3\4\5} vagy ={"január"\"február"\"március"}

Ha vesszővel választja el egymástól az elemeket, vízszintes tartomány (egy sor) jön létre. Pontosvesszőkkel történő elválasztás esetén függőleges tömb (egy oszlop) az eredmény. Kétdimenziós tömb létrehozásához minden egyes sorban vesszőkkel kell tagolni az elemeket, a sorok tagolását pedig pontosvesszőkkel kell végezni.

A következő eljárásokkal gyakorlatot szerezhet a vízszintes, a függőleges és a kétdimenziós konstansok létrehozásában. Példákat mutatunk be a SORSZÁMLISTA függvény használatával a tömbkonstansok automatikus létrehozásához, valamint a manuálisan megadott tömbállandók létrehozásához.

  • Vízszintes állandó létrehozása

    Használja az előző példákban megismert munkafüzetet, vagy hozzon létre egy újat. Jelöljön ki egy üres cellát, és írja be a =SORSZÁMLISTA(1,5) értéket. A SORSZÁMLISTA függvény egy 1 sorból és 5 oszlopból álló tömböt hoz létre, ami azonos a ={1\2\3\4\5} értékkel. A következő eredmény jelenik meg:

    Vízszintes tömbkonstans létrehozása a következővel: =SORSZÁMLISTA(1,5) vagy ={1,2,3,4,5}

  • Függőleges konstans létrehozása

    Jelöljön ki egy üres cellát, amely alatt van hely, és írja be a következőt: =SORSZÁMLISTA(5), vagy ={1;2;3;4;5}. A következő eredmény jelenik meg:

    Függőleges tömbkonstans létrehozása a következővel: =SORSZÁMLISTA(5) vagy ={1;2;3;4;5}

  • Kétdimenziós konstans létrehozása

    Jelölje ki bármely üres cellát, amelynek jobb oldalán és alatta van hely, és írja be a következőt: =SORSZÁMLISTA(3,4). Az eredmény a következő:

    3 soros és 4 oszlopos tömbállandó létrehozása a =SORSZÁMLISTA(3;4) függvénnyel

    A következőt is megadhatja: vagy ={1\2\3\4;5\6\7\8;9\10\11\12}, de érdemes figyelni, hol használ pontosvesszőket vagy vesszőket.

    Mint látható, a SORSZÁMLISTA beállítás jelentős előnyökkel jár a tömbkonstans értékeinek manuális bevitelével szemben. Elsősorban időt takarít meg, de a manuális bevitel hibáinak csökkentésében is segít. Az olvasása is egyszerűbb, különösen azért, mert a pontosvesszők nehezen megkülönböztethetők az elválasztó vesszőktől.

Íme egy példa, amely tömbkonstansokat használ egy nagyobb képlet részeként. A mintamunkafüzetben lépjen a Konstans egy képletben munkalapra, vagy hozzon létre egy új munkalapot.

A D9 cellába beírtuk a =SORSZÁMLISTA(1,5,3,1) értéket, de a 3, 4, 5, 6 és 7 értéket is beírhatja az A9:H9 cellába. Az adott számválasztásnak nincs semmi különleges oka, egyszerűen megkülönböztetés céljából az 1-5-ös érték helyett mást választottunk.

Az E11 cellába írja be a =SZUM(D9:H9*SORSZÁMLISTA(1;5)), vagy =SZUM(D9:H9*{1\2\3\4\5}) értéket. A képletek 85-öt adnak vissza.

Tömbkonstansok használata képletekben. Ebben a példában a =SZUM(D9:H(*SORSZÁMLISTA(1;5)) függvényt használtuk

A SORSZÁMLISTA függvény az {1\2\3\4\5} tömbkonstans megfelelője. Mivel az Excel először a zárójelek közötti kifejezéseken hajtja végre a műveleteket, a soron következő két elem a D9:H9-ben tárolt értékhalmaz (A1:E1), valamint a szorzási operátor (*). A képlet összeszorozza a tárolt tömbben lévő értékeket az állandó megfelelő értékeivel. Mindez így néz ki:

=SZUM(D9*1,E9*2,F9*3,G9*4,H9*5), vagy =SZUM(3*1,4*2,5*3,6*4,7*5)

Végül a SZUM függvény összeadja az értékeket, és 85-öt ad vissza.

Ha nem szeretné a tárolt tömböt használni, és a memóriában szeretné végrehajtani a műveletet, írja felül egy másik tömbkonstanssal:

=SZUM(SORSZÁMLISTA(1,5,3,1)*SORSZÁMLISTA(1,5))vagy =SZUM({3\4\5\6\7}*{1\2\3\4\5})

Tömbkonstansokban használható elemek

  • A tömbkonstansok tartalmazhatnak számokat, szöveget, logikai értékeket (például IGAZ és HAMIS), valamint hibaértékeket, például #N/A. A számok megadhatók egészként, decimális vagy tudományos alakban. Ha szöveget ír be, akkor idézőjelek ("szöveg”) közé kell tennie.

  • A tömbkonstansok nem tartalmazhatnak további tömböket, képleteket vagy függvényeket. Más szóval csak vesszővel vagy pontosvesszővel elválasztott szöveget vagy számokat tartalmazhatnak. Az Excel figyelmeztető üzenetet jelenít meg, amikor képletet ad meg, például {1\2\A1:D4} vagy {1\2\SZUM(Q2:Z8)}. A numerikus értékek nem tartalmazhatnak százalékjeleket, dollárjeleket, vesszőket vagy zárójeleket sem.

A tömbkonstansok használatának egyik legcélszerűbb módja az, ha nevet ad nekik. Az elnevezett állandók használata sokkal egyszerűbb, és így részben el is rejthető a tömbképletek összetettsége mások elől. Tömbképlet elnevezéséhez és képletben történő használatához az alábbiakat kell tennie:

Válassza a Képletek > Meghatározott nevek > Név meghatározása lehetőséget. A Név mezőbe írja be az 1. negyedév kifejezést. A Hivatkozás mezőbe írja be a következő konstansot (ne felejtse el manuálisan begépelni a kapcsos zárójeleket):

={"Január"\"Február"\"Március"}

A párbeszédpanel tartalma így néz ki:

Elnevezett tömbkonstans hozzáadása Képletek > Definiált nevek > Névkezelő > Új menüpontból

Kattintson az OKgombra, jelöljön ki egy három üres cellát tartalmazó sort, és írja be a következőt: =1. negyedév.

A következő eredmény jelenik meg:

Használjon elnevezett tömbkonstanst egy képletben, például =1. negyedév, ahol az 1. negyedév meghatározása ={"Január","Február","Március"}

Ha az eredményeket vízszintes helyett függőlegesen szeretné kibontani, használhatja a =TRANSZPONÁLÁS(1. negyedév) függvényt.

Ha meg szeretne jeleníteni egy 12 hónapból álló listát, amit pénzügyi kimutatás készítésekor is használhat, a SORSZÁMLISTA függvénnyel az aktuális évre is indíthat egyet. A függvénnyel kapcsolatban az a lényeg, hogy bár csak a hónap jelenik meg, van mögötte egy érvényes dátum, amelyet más számításokban is használhat. Ezek a példák a Nevesített tömbkonstans és a Gyors mintaadathalmaz munkalapokon találhatók a példamunkafüzetben.

=SZÖVEG(DÁTUM(ÉV(MA());SORSZÁMLISTA(1,12),1);"mmm")

A SZÖVEG, DÁTUM ÉV, MA és a SORSZÁMLISTA függvények kombinációjával 12 hónapból álló dinamikus listát hozhat létre

Ez a DÁTUM függvény segítségével az aktuális év alapján hoz létre dátumot, a SORSZÁMLISTA egy tömbkonstansot hoz létre 1 és 12 között januártól decemberig, majd a SZÖVEG függvény "mmm" formátumra konvertálja a megjelenítési formátumot (január, február, március stb.). Ha meg szeretné jeleníteni a hónap teljes nevét, például a januárt, használja az "mmmm" kifejezést.

Ha elnevezett állandót használ tömbképletként, ne felejtse el beírni az egyenlőségjelet, például =1. negyedév, nem pedig 1. negyedév. Ha elfelejti, az Excel szöveges karakterláncként fogja értelmezni a tömböt, így a képlet nem a várt eredményt fogja adni. Tartsa szem előtt azt is, hogy függvények, szöveg és számok kombinációi is használhatók. Mindez attól függ, hogy mennyire szeretne kreatívan dolgozni.

A következő példák néhány olyan módszert szemléltetnek, amellyel a tömbállandók használhatók a tömbképletekben. Néhány példában a TRANSZPONÁLÁS függvény oszlopokká alakítja a sorokat, vagy éppen fordítva.

  • Tömb összes elemének összeszorzása

    Írja be a =SORSZÁMLISTA(1,12)*2vagy ={1\2\3\4;5\6\7\8;9\10\11\12}*2 értéket

    Oszthat (/) hozzáadhat (+) és kivonhat (-) is.

  • Tömbben lévő elemek négyzetre emelése

    Írja be a =SORSZÁMLISTA(1,12)^2vagy ={1\2\3\4;5\6\7\8;9\10\11\12}^2 értéket

  • Tömb négyzetre emelt értéke négyzetgyökének megkeresése

    Írja be a =GYÖK(SORSZÁMLISTA(1,12)^2), vagy =GYÖK({1\2\3\4;5\6\7\8;9\10\11\12}^2) értéket

  • Egydimenziós sor transzponálása

    Írja be a =TRANSZPONÁLÁS(SORSZÁMLISTA(1,5)), vagy =TRANSZPONÁLÁS({1\2\3\4\5}) értéket

    Noha vízszintes tömbkonstansot írt be, a TRANSZPONÁLÁS függvény oszloppá alakítja a tömbkonstansot.

  • Egydimenziós oszlop transzponálása

    Írja be a =TRANSZPONÁLÁS(SORSZÁMLISTA(5,1)), vagy =TRANSZPONÁLÁS({1;2;3;4;5}) értéket

    Noha függőleges tömbkonstansot írt be, a TRANSZPONÁLÁS függvény sorrá alakítja az állandót.

  • Kétdimenziós konstans transzponálása

    Írja be a =TRANSZPONÁLÁS(SORSZÁMLISTA(3,4)), vagy =TRANSZPONÁLÁS({1\2\3\4;5\6\7\8;9\10\11\12}) értéket

    A TRANSZPONÁLÁS függvény minden sort oszlopok sorozatává alakít.

Ebben a szakaszban egyszerű tömbképletekre talál példákat.

  • Tömb létrehozása már meglévő értékekből

    Az alábbi példa azt ismerteti, hogyan hozhat létre új tömböt egy meglévő tömbből tömbképletekkel.

    Írja be a =SORSZÁMLISTA(3,6,10,10)vagy ={10\20\30\40\50\60;70\80\90\100\110\120;130\140\150\160\170\180} értéket

    Mivel számtömböt hoz létre, ne felejtse el beírni a nyitó kapcsos zárójelet { a 10 elé, illetve a záró kapcsos zárójelet } a 180 után.

    Ezután írja be a =D9#, vagy =D9:I11 értéket egy üres cellába. Ekkor megjelenik egy 3x6-os cellatömb, amelyben ugyanazok az értékek szerepelnek, mint a D9:D11-ben. A # jelet kibontott tartományoperátornak nevezik, és az Excel ezzel hivatkozik a teljes tömbtartományra ahelyett, hogy be kellene írnia.

    Meglévő tömbre való hivatkozás a kibontott tartományoperátor (#) használatával

  • Tömbkonstans létrehozása már meglévő értékekből

    A kibontott tömbképletek eredményeit átalakíthatja az összetevők részeivé. Válassza a D9 cellát, majd nyomja le az F2 billentyűt, és lépjen szerkesztési módba. Ezután nyomja le az F9 billentyűt, és alakítsa a cellahivatkozásokat értékké. Az Excel tömbkonstanssá alakítja azokat. Amikor lenyomja az Enter billentyűt, a =D9# képletnek most ={10\20\30;40\50\60;70\80\90} formában kell lennie.

  • Cellatartományban lévő karakterek megszámlálása

    A következő példából megtudhatja, hogy miként állapítható meg a kérdéses cellatartományban található karakterek száma. Ez tartalmazza a szóközöket.

    Megszámolja egy tartomány karaktereinek teljes számát, valamint a szöveges sztringek használatát szolgáló egyéb tömböket

    =SUM(HOSSZ(C9:C13))

    Ebben az esetben a HOSSZ függvény a tartomány egyes celláiban talált szöveges karakterláncok hosszát adja eredményül. A SZUM függvény ezt követően összeadja a szóban forgó értékeket, majd megjeleníti az eredményt (66). Ha a karakterek átlagos számát szeretné megkapni, a következőt használhatja:

    =ÁTLAG(HOSSZ(C9:C13))

  • A leghosszabb cella tartalma a C9:C13 tartományban

    =INDEX(C9:C13,HOL.VAN(MAX(HOSSZ(C9:C13)),HOSSZ(C9:C13),0),1)

    A képlet csak akkor működik, ha az adattartomány egyetlen oszlopnyi cellát tartalmaz.

    A képletet a belső elemektől kifelé haladva több elem építi fel. A HOSSZ függvény a D2:D6 cellatartomány egyes elemeinek hosszát adja vissza. A MAX függvény az elemek közül a legnagyobb értéket számítja ki, amely a D3 cellában található leghosszabb szöveges sztringnek felel meg.

    Az alábbiakban egy kicsit összetettebb a helyzet. A HOL.VAN függvény a leghosszabb szöveges sztringet tartalmazó cella eltolását (relatív pozícióját) számítja ki. Ehhez három argumentumra van szükség: egy keresési értékre, egy keresési tömbre és egy egyezéstípusra. A HOL.VAN függvény megkeresi a keresési tömbben a megadott keresési értéket. Ebben az esetben a keresési érték a leghosszabb szöveges sztring:

    MAX(HOSSZ(C9:C13)

    A karakterlánc ebben a tömbben van:

    HOSSZ(C9:C13)

    Az egyezéstípus argumentuma ebben az esetben 0. Az egyezés típusa 1, 0 vagy -1 érték lehet.

    • 1 – a keresési értéknél kisebb vagy azzal egyenlő legnagyobb értéket adja vissza

    • 0 – az első értéket adja vissza, ami pontosan megegyezik a keresési értékkel

    • -1 – a megadott keresési értéknél nagyobb vagy azzal egyenlő legkisebb értéket adja vissza

    • Ha kihagy egy egyezéstípust, az Excel az 1-et feltételezi.

    Az INDEX függvény az alábbi argumentumokat használja: egy tömb, valamint egy azon belül található sor- és oszlopszám. A C9:C13 cellatartomány a tömböt, a HOL.VAN függvény a cellacímet adja meg, az utolsó argumentum (1) pedig azt, hogy az értéket a tömb első oszlopából olvassa a program.

    Ha a legkisebb szöveges sztring tartalmát szeretné beolvasni, a fenti példában a MAX értéket MINértékre kell cserélnie.

  • Cellatartomány n darab legkisebb értékének keresése

    Ez a példa bemutatja, hogyan keresheti meg a három legkisebb értéket egy cellatartományban, ahol a B9:B18 cella mintaadatainak tömbje a következőkkel lett létrehozva: =INT(VÉLETLENTÖMB(10,1)*100). Vegye figyelembe, hogy a VÉLETLENTÖMB egy ideiglenes függvény, így az Excel minden számításakor új véletlenszerű számokat fog kapni.

    Excel-tömbképlet a legkisebb N-edik érték megkereséséhez: =KICSI(B9#;SORSZÁMLISTA(D9))

    Adja meg a =KICSI(B9#;SORSZÁMLISTA(D9), =KICSI(B9:B18;{1;2;3}) értéket

    Ez a képlet tömbkonstanst használ a KICSI függvény háromszori kiértékeléséhez, és a B9:B18 cellában található tömb legkisebb 3 tagját adja vissza, ahol a 3 a D9 cellában lévő változó érték. További értékek kereséséhez növelheti az értéket a SORSZÁMLISTA függvényben, vagy további argumentumokat adhat a konstanshoz. Ezzel a képlettel további függvényeket is használhat, például a SZUM vagy az ÁTLAG függvényeket. Például:

    =SZUM(KICSI(B9#,SORSZÁMLISTA(D9))

    =ÁTLAG(KICSI(B9#,SORSZÁMLISTA(D9))

  • Cellatartomány n darab legnagyobb értékének keresése

    Valamely tartomány legnagyobb értékeinek megkereséséhez írja felül a KICSI függvényt a NAGY függvénnyel. A következő példában ezenfelül a SOR és az INDIREKT függvény is helyet kapott.

    Írja be a =NAGY(B9#;SOR(KÖZVETETT("1:3"))), vagy =NAGY(B9:B18;SOR(KÖZVETETT("1:3"))) értéket

    Ezen a ponton ez segíthet egy kicsit megismerni a SOR és a KÖZVETETT függvényeket. A SOR függvénnyel egymást követő egész számokból álló tömböt hozhat létre. Válasszon például egy üres elemet, és írja be a következőt:

    =SOR(1:10)

    A képlet tíz egymás után következő egész számot helyez el az oszlopban. Az egyik lehetséges probléma megértéséhez szúrjon be egy sort a tömbképletet tartalmazó tartomány (az első sor) fölé. Az Excel frissíti a sorhivatkozásokat, és a képlet most a 2 és 11 közötti egész számokat jeleníti meg. A probléma megoldása végett vegye fel az INDIREKT függvényt a képletbe:

    =SOR(INDIREKT("1:10"))

    Az INDIREKT függvény szöveges sztringeket használ argumentumként (ezért az 1:10 tartományt idézőjelek veszik körül). Az Excel nem módosítja a szöveges értékeket sorok beszúrásakor vagy a tömbképlet más módon történő áthelyezésekor. Ennek eredményeképpen a SOR függvény mindig létrehozza a kívánt tömböt az egész számokból. Ugyanilyen egyszerűen használhatja a SORSZÁMLISTA függvényt:

    =SORSZÁMLISTA(10)

    Érdemes megvizsgálni a korábban már alkalmazott képletet (=NAGY(B9#,SOR(INDIREKT("1:3")))) a belső zárójelektől kifelé haladva: az INDIREKT függvény szöveges értékek készletét adja vissza, jelen esetben az 1, a 2 és a 3 értéket. A SOR függvény viszont egy háromcellás oszlopos tömböt eredményez. A rendszer által háromszor kiértékelt NAGY függvény a B9:B18 cellatartomány értékeit használja, a SOR függvény által visszaadott minden egyes hivatkozáshoz egyszer. Ha további értékeket szeretne keresni, nagyobb cellatartományt kell hozzáadnia az INDIREKT függvényhez. Ahogy a KICSI példákkal, ez a képlet más függvényekkel is használható, például a SZUM és az ÁTLAG függvénnyel.

  • Hibaértékeket tároló tartomány összegzése

    Az Excel SZUM függvénye nem használható akkor, ha hibaértéket tartalmazó tartományt szeretne összegezni, például #ÉRTÉK! vagy #N/A. A következő példából megtudhatja, hogy miként összegezhetők a hibákat is tartalmazó Adatok nevű tartományban tárolt értékek:

    Használjon tömböket a hibák kezeléséhez. Az =SZUM(HA(HIBÁS(Adat);"";Adat) például akkor is összegzi az Adatok nevű tartományt, ha hibákat tartalmaz, például #ÉRTÉK! vagy #HIÁNYZIK!.

  • =SZUM(HA(HIBÁS(Adatok),"",Adatok))

    A képlet egy, az eredeti értékeket a hibaértékek nélkül tartalmazó új tömböt hoz létre. Belülről kifelé haladva: a HIBÁS függvény megkeresi a cellatartományban (Adatok) a hibákat. A HA függvény meghatározott értéket ad eredményül, ha egy megadott feltétel IGAZ értékű, és egy másik értéket, ha a feltétel értéke HAMIS. A jelen esetben valamennyi hibaértékhez üres karakterláncokat fog visszaadni (""), mivel az értékek IGAZ értékkel teljesülnek – visszaadja a fennmaradó értékeket is a tartományból (Adatok), hiszen azok HAMIS értékkel teljesülnek, azaz nem szerepelnek bennük hibaértékek. A SZUM függvény ezután kiszámítja a szűrt tömb végösszegét.

  • Tartomány hibaértékszámának kiszámítása

    Ez a példa hasonló az előző képlethez, de kiszűrésük helyett az Adatok nevű tartományban lévő hibaértékek számát adja eredményül:

    =SZUM(HA(HIBÁS(Adatok);1;0))

    Ez a képlet olyan tömböt hoz létre, amely az 1 értékkel jelzi a hibákat tartalmazó, 0 értékkel pedig a hiba nélküli cellákat. A képlet egyszerűsíthető úgy, hogy eredménye ugyanaz legyen – ehhez távolítsa el a HA függvényhez tartozó harmadik argumentumot a következő módon:

    =SZUM(HA(HIBÁS(Adatok);1))

    Ha nem adja meg az argumentumot, a HA függvény a HAMIS eredményt fogja adni abban az esetben, ha egy cella nem tartalmaz hibaértéket. A képlet még tovább egyszerűsíthető:

    =SZUM(HA(HIBÁS(Adatok)*1))

    Ez a változat azért működik, mert az IGAZ*1 művelet 1, a HAMIS*1 művelet pedig 0 értékű.

Bizonyos esetekben szükség lehet az értékeket feltételek alapján összegezni.

Tömbök használatával bizonyos feltételek szerint végezhet számításokat. Az =SZUM(HA(Értékesítés>0;Értékesítés)) függvény a 0-nál nagyobb értékeket összegzi egy Értékesítés nevű tartományban.

A következő tömbképlet például csak a pozitív egész számokat összegzi az Értékesítés nevű tartományban, amely az E9:E24 cellákat jelöli a fenti példában:

=SZUM(HA(Értékesítés>0;Értékesítés))

A HA függvény pozitív és hamis értékek tömbjét hozza létre. A SZUM függvény figyelmen kívül hagyja a hamis értékeket, mert a 0+0 művelet eredménye 0. Az ebben a képletben használt cellatartomány tetszőleges számú sorból és oszlopból állhat.

Lehetősége van több feltételnek eleget tévő értékek összegzésére is. Ez a tömbképlet például 0-nál nagyobb ÉS 2500-nál kisebb értékeket számít ki:

=SZUM((Értékesítés>0)*(Értékesítés<2500)*(Értékesítés))

Tartsa szem előtt, hogy a képlet hibát eredményez, ha a tartomány akár csak egy nem numerikus cellát is tartalmaz.

Létrehozhatók VAGY típusú feltételt használó tömbképletek is. Összegezheti például a 0-nál nagyobb VAGY 2500-nál kisebb értékeket:

=SZUM(HA((Értékesítés<0)+(Értékesítés>2500),Értékesítés))

Az ÉS, valamint a VAGY függvény nem használható közvetlenül tömbképletekben, mert egyetlen eredményt ad vissza (IGAZ vagy HAMIS), míg a tömbfüggvények működéséhez eredménytömbök szükségesek. A probléma az előző képletben használt logika alkalmazásával megoldható. Megfogalmazható mindez úgy is, hogy matematikai műveleteket (például összeadást vagy szorzást) hajt végre a VAGY, illetve az ÉS feltételnek eleget tévő értékeken.

E példa alapján eltávolíthatja a nullákat az adott tartományból, ha átlagolni szeretné az abban lévő értékeket. A képletben egy Értékesítés nevű adattartomány szerepel:

=ÁTLAG(HA(Értékesítés<>0;Értékesítés))

A HA függvény létrehozza a nullával nem egyenlő értékek tömbjét, és átadja a talált értékeket az ÁTLAG függvénynek.

Ez a tömbképlet összehasonlítja az Adatok1 és az Adatok2 cellatartomány értékeit, és a két tartomány különbségeinek számát adja eredményül. Amennyiben a két tartomány megegyező tartalmú, a képlet nullát ad eredményül. A képlet használatához a cellatartományoknak megegyező méretűeknek és kiterjedésűeknek kell lenniük. Például ha az Adatok1 tartomány 3 soros és 5 oszlopos, akkor az Adatok2 tartománynak is 3 sorból és 5 oszlopból kell állnia:

=SZUM(HA(Adatok1=Adatok2;0;1))

A képlet létrehoz egy új tömböt, amelynek mérete megegyezik az összehasonlított tartományok méretével. A HA függvény feltölti a tömböt a 0 és az 1 értékkel (a 0 a különbségeket, az 1 az azonos cellákat jelöli). A SZUM függvény ezt követően kiszámítja a tömbben lévő értékek összegét.

A képlet egyszerűsíthető:

=SZUM(1*(Adatok1<>Adatok2))

Az adott tartományban lévő hibaértékeket megszámláló képlethez hasonlóan ez a képlet is azért működik, mert az IGAZ*1 művelet eredménye 1, a HAMIS*1 műveleté pedig 0.

Ez a tömbképlet az Adatok nevű egyoszlopos tartomány legnagyobb értékét tartalmazó sor számát adja eredményül:

=MIN(HA(Adatok=MAX(Adatok),SOR(Adatok),""))

A HA függvény létrehoz egy, az Adatok nevű tartománynak megfelelő új tömböt. Ha valamelyik megfelelő cella tartalmazza a tartomány legnagyobb értékét, a tömbben szerepel a sor száma. Ha nem, a tömb egy üres karakterláncot ("") tartalmaz. A MIN függvény az új tömböt használja második argumentumaként, és a legkisebb értékét adja vissza – ez az érték az Adatok tartomány legnagyobb értékét tároló sor számával egyezik meg. Ha az Adatok nevű tartomány azonos legnagyobb értékeket tartalmaz, a képlet az első érték sorának számát adja eredményül.

A legnagyobb értéket tartalmazó cella tényleges címének megjelentéséhez a következő képletet használhatja:

=CÍM(MIN(HA(Adatok=MAX(Adatok),SOR(Adatok),"")),OSZLOP(Adatok))

Hasonló példákat talál a mintamunkafüzetben az Adathalmazok közötti különbségek munkalapon.

Elismerés

A cikk részei Colin Wilcoxnak az Excel használatában jártas felhasználóknak szánt írásain, valamint az Excel korábbi MVP szakértőjének számító John Walkenbach Excel 2002 Formulas (Az Excel 2002 képleteinek használata) című könyvének 14. és 15. fejezetén alapul.

További segítségre van szüksége?

Kérdéseivel mindig felkeresheti az Excel technikai közösség egyik szakértőjét, vagy segítséget kérhet a közösségekben.

Lásd még

Dinamikus tömbök és kibontott tömb viselkedése

Dinamikus tömbképletek és korábbi CSE-tömbképletek

SZŰRŐ függvény

VÉLETLENTÖMB függvény

SORSZÁMLISTA függvény

SORBA.RENDEZ függvény

RENDEZÉS.ALAP.SZERINT függvény

EGYEDI függvény

#KITÖLTÉS! hibák az Excelben

Implicit metszetoperátor: @

Képletek – Áttekintés

További segítségre van szüksége?

További lehetőségeket szeretne?

Fedezze fel az előfizetés előnyeit, böngésszen az oktatóanyagok között, ismerje meg, hogyan teheti biztonságossá eszközét, és így tovább.