Új hozzászólás Aktív témák

  • Mutt

    aktív tag

    válasz mexel #20964 üzenetére

    Hello,

    ...Azt kellene kiíratnom egy cellában, hogy hány sorban van a,b,d,e betű, de nem csak ebben a felállásban, hanem olyan is amiben pl a,b,c,d,e van stb.

    Tömb-függvénnyel és segédoszloppal itt egy megoldás:

    A-oszlopban vannak a karakterek, D2-ben a keresési érték. B-ben látható, hogy mikor van egyezés és E2-ben ezeket számoljuk meg.

    B1-ben a képlet (CSE-ként vidd be):
    =SZUM(--SZÁM(HOL.VAN(KÖZÉP($D$2;(SOR(INDIREKT("A1:A"&(HOSSZ($D$2)+1)/2))-1)*2+1;1);KÖZÉP(A1;(SOR(INDIREKT("A1:A"&(HOSSZ(A1)+1)/2))-1)*2+1;1);0)))=(HOSSZ($D$2)+1)/2

    Működése:
    1. A KÖZÉP(A1;(SOR(INDIREKT("A1:A"&(HOSSZ(A1)+1)/2))-1)*2+1;1) rész karakterekre szedi a szöveget, úgy hogy minden második karaktert (ahol a felsorolásjel van) átugorja. Röviden az A1-ben lévő "a,b,c,d,e,f" szövegből csinál egy ilyen tömböt: {"a";"b";"c";"d";"e";"f"}, amiben keresni fogunk.
    2. A KÖZÉP($D$2;(SOR(INDIREKT("A1:A"&(HOSSZ($D$2)+1)/2))-1)*2+1;1) ugyanazt csináljacsak a D2-ben lévő keresési értékkel. ({"a";"e"})
    3. Meg van hogy mit és hogy miben keressük, erre a HOL.VAN függvényt használtam (a SZÖVEG.KERES lenne idevaló, de tömbön nem megy).
    A HOL.VAN vagy egy számot, vagy hiányzik értéket ad vissza. Ezeket a SZÁM és a "--" operandussal egyesekre és nullásokra alakítottam.
    4. Ezt már össze lehet adni. Az eredmény megmondja hogy hányszor szerepeltek a betűk a keresett szövegben.
    5. A végső lépés már csak annyi, hogy nekünk azok a jó találatok, ahol minden betűt megtaláltunk, vagyis ha a keresendő mezőben 2 betű volt, akkor csak az jó nekünk, ha a találatok is ennyit adnak ki, Erre van a képlet végén a =(HOSSZ($D$2)+1)/2 rész.
    6. Utolsó utáni lépésként már csak az IGAZ találatokat kell megszámolni a B-oszlopban.

    üdv

    A tanácsaimat ingyen adom. Ha nem tetszik, akkor kérlek ne kritizáld! / https://github.com/viszi/codes/tree/master/Excel

Új hozzászólás Aktív témák