
Általános képlet
(=INDEX(range,MATCH(FALSE,ISBLANK(range),0)))
Összegzés
Az első nem üres érték (szöveg vagy szám) megszerzéséhez az egy oszlopos tartományban használhat egy tömbképletet, amely az INDEX, MATCH és ISBLANK függvényeken alapul. A bemutatott példában a D10 képlete a következő:
(=INDEX(B3:B11,MATCH(FALSE,ISBLANK(B3:B11),0)))
Megjegyzés: ez egy tömbképlet, amelyet a Control-Shift-Enter billentyűkombinációval kell megadni.
Magyarázat
Tehát a probléma lényege a következő: Meg akarjuk szerezni az első nem üres cellát, de erre nincs közvetlen módunk az Excelben. Használhatnánk a VLOOKUP-ot helyettesítő karakterrel * (lásd az alábbi linket), de ez csak szöveg esetén működik, számok esetén nem.
Tehát képletek beágyazásával kell kiépítenünk a szükséges funkcionalitást. Ennek módja egy tömbfüggvény használata, amely "teszteli" a cellákat és visszaadja az IGAZ / HAMIS értékek tömbjét, amelyeket betáplálhatunk a MATCH függvénybe.
Belülről kifelé haladva az ISBLANK funkció kiértékeli a B3: B11 tartomány celláit, és egy így kinéző tömböt ad vissza:
(TRUE;FALSE;TRUE;FALSE;FALSE;TRUE;TRUE;TRUE;TRUE)
Minden FALSE egy cellát jelent a tartományban, amely nem üres.
Ezután a MATCH a FALSE-t keresi a tömbben, és visszaadja az első megtalált találat helyzetét, ebben az esetben a 2. Ebben a pillanatban a példa képlete így néz ki:
(=INDEX(B3:B11,2,0)))
Végül az INDEX függvény átveszi és megkapja az értéket a tömb 2. pozíciójában, ami 10.
Az első nem nulla hosszúsági érték
Az első nem nulla hosszúsági érték megszerzéséhez a következőképpen vonhatja be a LEN funkciót:
(=INDEX(range,MATCH(TRUE,LEN(range)>0,0)))
Első numerikus érték
A lista első numerikus értékének megszerzéséhez a képletet alkalmazhatja az ISNUMBER függvény használatára, majd megváltoztathatja a logikát az IGAZ helyett HAMIS helyett:
(=INDEX(range,MATCH(TRUE,ISNUMBER(range),0)))
Ez is egy tömbképlet, és a vezérlő + shift + enter billentyűkombinációval kell megadni.