A következő Excel-probléma már önmagában kérdéseket vet fel az értelmezését tekintve, de én amondó vagyok, hogy ha egyfajta megoldás alaplogikájával tisztában van valaki, akkor onnantól kezdve már rá tudja húzni bármelyik másik értelmezésre is a saját megoldását (amiből persze Excel lévén létezik jópár különböző).
A kérdés tehát roppant egyszerű, mondjuk meg, hogy két oszlopunkban/listánkban hány darab egyező érték van (de lehet több lista is), akár ki is színezhetjük Conditional Formattinggal az érintett cellákat, de a lényeg nekünk most csak egy darabszám. Itt lennének az értelmezésbeli módosulások, hiszen gondolhatunk szöveget tartalmazó cellákra, gondolhatunk arra, hogy a két listánk nem megegyező méretű, egyáltalán ha az egyik listában egy érték sokszor szerepel akkor azt egy egyezésnek vagy többnek számoljuk-e és így tovább - a mostani példamegoldás szövegre, nem azonos méretű listák esetén is működik és nem feltételez duplikációkat.
Ahogy látszik a példaképen, az első listában és a második listában 2 közös értékünk van, egy PAKS és egy VIDEOTON érték (nincs semmi logika a csapatok felsorolásában, annyira nem vagyok oda a fociért), mi lenne a legegyszerűbb módszer arra, hogy ezt a számot visszakapjuk formulával?
Mivel tömbökkel dolgozunk, előzetesen sanszos, hogy tömbképletre lesz majd szükségünk, ahogy az is biztos, hogy valahol be kell majd építenünk egy IF-et legalább (itt akár lehet COUNTIF vagy SUMIF is a képben, ez attól függ, milyen logika mellett indultunk el).
Elsőként fogjunk egy MATCH függvényt, ami az első paramétereként megadott értéke/tartományt keresi a második paramétereként megadott tartományban - és kérjünk pontos egyezést harmadik paraméterként, valahogy így:
=MATCH(D3:D15,E3:E15,0)
Ennek értelmezése szerintem senkinek nem okozhat problémát, úgyhogy száguldjunk is tovább egy olyan függvénnyel, amelyről itt még nem esett szó, ez pedig az ISNA, ami szimplán annyit tesz, amit a neve is jelent, azaz megvizsgálja, hogy egy cellában/tartományban szereplő érték N/A-e és ennek alapján ad TRUE Vagy FALSE értéket vissza. Ezt futtassuk rá az előbbi MATCH kombinációnkra:
=ISNA(MATCH(D3:D15,E3:E15,0))
Mit is csinál ez? Megnézi, hogy a MATCH által létrehozott keresésnél van-e valahol N/A érték és ez alapján TRUE és FALSE értékeket fog visszadobálni. De miért is volt erre szükség? Azért, mert ezeket a TRUE és FALSE értékeket át tudjuk alakítani 1 vagy 0 értékekre, ami aztán könnyen szummázható és meg is kapjuk szépen az eredményünket. De azért ne rohanjunk előre ennyire, hiszen most kell akkor egy IF függvény, hogy átalakítsuk az ISNA formula TRUE-FALSE válaszait 1-re és 0-ra:
=IF(ISNA(MATCH(D3:D15,E3:E15,0)),0,1)
Ezután pedig ott a tömbünk, tele egyesekkel és nullákkal, egyszerűen adjuk össze tömbképletként (CTRL+SHIFT+ENTER) és that's all!
=SUM(IF(ISNA(MATCH(D3:D15,E3:E15,0)),0,1))
Példánkon ez pedig így néz majd ki:
De ez a probléma tipikusan megint az, amit iszonyú sokféleképpen meg lehet oldani, az én fejemben a fentin kívül még ott van egy Conditional Formattingos megoldás, egy segédcellás megoldás, de például bevethetünk egy COUNTIF-SUMPRODUCT tömbképletet is, szóval hajrá-hajrá, jöhetnek az egyedi megoldások, ötletek, kritikák!
A végére pedig jöjjön egy hasznos tipp, ami azoknak lehet segítség, akik nem angol nyelven használnak Excelt, mégis szeretnék egyeztetni megoldásukat az angollal. Van elég sok weboldal, ahol megtalálhatjuk az angol függvénynevek magyar megfelelőjét, de egy gyors és hatékony, plusz VBA-barát megoldás az ?activecell.Formula parancs, amit úgy tudunk legegyszerűbben lefuttatni, hogy ráállunk a függvényt tartalmazó cellánkra, ALT+F11-el előhívjuk a VBA Editort, majd CTRL+G-vel az Immediate Windowt, majd ott bemásolva a parancsot ENTERT nyomunk és íme, láss csodát!