Excel képlet: A betűk fordítása számokká -

Tartalomjegyzék

Általános képlet

(=TEXTJOIN("",1,VLOOKUP(T(IF(1,MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1))),xtable,2,0)))

Összegzés

A karakterlánc betűinek számokká történő lefordításához használhatja a TEXTJOIN és a VLOOKUP függvényeken alapuló tömbképletet, egy meghatározott fordítási táblával a szükséges keresések biztosításához. A bemutatott példában a C5 képlete a következő:

(=TEXTJOIN("",1,VLOOKUP(T(IF(1,MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1))),xtable,2,0)))

ahol "xtable" az E5: F10 megnevezett tartomány.

Megjegyzés: ez egy tömbképlet, amelyet a control + shift + enter billentyűkombinációval kell megadni.

Magyarázat

Lényegében ez a képlet tömbművelettel generálja a betűtömböt a beviteli szövegből, minden betűt külön-külön lefordít egy számra, majd az összes számot újra összekapcsolja, és a kimenetet stringként adja vissza.

A bemeneti karakterlánc tömb vagy betűkké történő elemzéséhez a következő MID, ROW, LEN és INDIRECT függvényeket használjuk:

MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1)

A LEN visszaadja a bevitt szöveg hosszát, amelyet összefűzve "1:" -re állítunk, és szövegként a INDIRECT-nek adjuk át. Az INDIRECT a szöveget sorhivatkozásként értékeli, és a ROW függvény számtömböt ad vissza MID-be:

MID(B5,(1;2;3),1)

A MID ekkor kivon egy karaktert minden kiindulási helyzethez, és megvan:

=TEXTJOIN("",1,VLOOKUP(T(IF(1,("a";"b";"c"))),xtable,2,0))

Lényegében arra kérjük a VLOOKUP-ot, hogy egyszerre találjon megfelelőt az "a", "b" és "c" kifejezésre. Homályos okokból ezt a tömböt különös módon "el kell vetnünk" a T és az IF függvények felhasználásával. A VLOOKUP futása után:

=TEXTJOIN("",1,(9;4;6))

és a TEXTJOIN a "946" karakterláncot adja vissza.

Írjon ki egy számot

Ha végeredményként egy számot szeretne kiírni (karakterlánc helyett), adjon hozzá nulla értéket. A matematikai művelet a karakterláncot számra kényszeríti.

Összegszámok

Összefoglalva a számokat, ahelyett, hogy felsorolná őket, a TEXTJOIN-t a következővel cserélheti le:

=SUM(VLOOKUP(T(IF(1,MID(B5,ROW(INDIRECT("1:"&LEN(B5))),1))),xtable,2,0))

Megjegyzés: a TEXTJOIN funkciót az Office 365 előfizetési programon keresztül vezették be 2018-ban.

Jó linkek

Szerezzen kezdőbetűket a névből (Chandoo)

érdekes cikkek...