Telefonszámunk: 1-472-0679

Saját függvény készítése Excelben – LAMBDA

2026-01-03 - horvimi - Kategória: Függvények
Hivatkozott Excel verzio:

LAMBDA

Az Excelnek 500+ beépített munkalapfüggvénye van. Ezeket úgy használjuk, hogy a pontos működésüket nem kell ismernünk, csak a függvények nevére és paraméterezésére van szükség:

=FÜGGVÉNYNÉV(ARG1;ARG2;….)

Az összes függvényt talán senki sem ismeri fejből, de a rendszeres Excel felhasználók ismernek kb. 40-50 függvényt. Ezek egymásba ágyazásával igen komplex kifejezések is születhetnek. Most azt a példát fogjuk használni, amikor egy szövegben rejtőző számot szeretnénk kibontani egy cellából.

Mintatáblázat

Az első temékkód a B8-as cellában van. A szükséges formula, ami a benne szereplő 4521-es számot kibányássza:

=SZÖVEGÖSSZEFŰZÉS("";IGAZ;HAHIBA(KÖZÉP(B8;SORSZÁMLISTA(HOSSZ(B8));1)*1;""))

=TEXTJOIN("";TRUE;IFERROR(MID(B8;SEQUENCE(LEN(B8));1)*1;""))

Most nem kezdek bele a képlet működésének magyarázatába, majd egy külön postot szánok neki, de az látszik rajta, hogy egy közepesen komplex képlet. Ezt adta nekünk például a ChatGPT vagy bárki/bármi más.

Mi lenne, ha ehelyett lenne nekünk egy speciális, csakis erre a feladatra való függvényünk, amit így használnánk:

=számkibontás(B8)

Ha megnézzük a képletet, akkor azt látjuk, hogy csak egy változó input van benne, az a szöveg, amiből ki kell nyerni a számot. A konkrét példában ez a B8. Most a LAMBDA függvény segítségével készítünk egy fedőfüggvényt a fenti összetett kifejezéshez, aminek egy bemenő paramétere lesz:

 

A saját, felhasználói függvény definíciója

=LAMBDA(
       szoveg;
       SZÖVEGÖSSZEFŰZÉS(
                        "";
                        IGAZ;
                        HAHIBA(KÖZÉP(szoveg;SORSZÁMLISTA(HOSSZ(szoveg));1)*1;"")
                       )
)

Csupán annyi történt, hogy

  1. az eredeti kifejezést körbeöleltük egy LAMBDA függvénnyel. A LAMBDA első argumentuma a bemenő paraméter, aminek a szoveg nevet adjuk. Ezt a nevet mi döntjük el.
  2. Majd ezt a nevet behelyettesítettük a második argumentumban lévő képletében szereplő cellacím (B8) helyére.
  3. A formulát ALT+ENTER segítségével sorokra bontjuk, hogy jobban lehessen olvasni és karbantartani.

Ha lezárjuk a LAMBDA formulát, akkor egy hibaüzenetet kapunk

#SZÁMÍTÁS! vagy angolul #CALC!

Ez amiatt van, mert a szoveg nevű argumenumnak nem adtunk értéket.

LAMBDA kipróbálása – tesztelés

A LAMBDA függvény után zárójelben meg lehet adni a teszteléshez szükséges argumentumok konkrét értékeit. Általánosságban így:

=LAMBDA(Arg1;Arg2;…;Kalkuláció)(12;25)

A 12 bekerül az Arg1, a 25 bekerül az Arg2 helyére, így már le tud futni a LAMBDA és visszaadja az eredményt ehhez a két argumentumhoz. A zárójelek között cellcímek is szerepelhetnek természetesen.

A mi konkrét példánkban

=LAMBDA(szoveg; 
        SZÖVEGÖSSZEFŰZÉS( ""; IGAZ; 
           HAHIBA(KÖZÉP(szoveg;SORSZÁMLISTA(HOSSZ(szoveg));1)*1;"")
         ) 
)(B8)

Saját függvény elnevezése a névkezelőben

Mi ezt nem csak teszt üzemmódban, hanem saját névvel, a munkafüzet bármely pontján szeretnénk használni. Ezt úgy tudjuk megtenni, hogy ezt a LAMBDA kifejezést elnevezzük.

  1. Kijelöljük a LAMBDA függvényt (a végén lévő teszt paraméterek nélkül)
  2. Képletek -> Névkezelő -> Új…
    Lambda-fájlkezelő

Saját függvény használata

Egyenlőségjel után elkezdjük gépelni a nevét, majd TAB-al vagy dupla klikkel kiválasztjuk.

Lambda-használata-névvel

Miért-jó-ez-nekünk

Van videó is az egészről

További példák a következő részben

Excel LAMBDA függvény példák

 

 

 

 

Vélemény, hozzászólás?