Excel formula: burtu tulkošana ciparos

Satura rādītājs

Vispārēja formula

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

Kopsavilkums

Lai tulkotu virknes burtus uz cipariem, varat izmantot masīva formulu, kuras pamatā ir TEXTJOIN un VLOOKUP funkcijas, ar definētu tulkošanas tabulu, lai nodrošinātu nepieciešamos uzmeklējumus. Parādītajā piemērā formula C5 ir:

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

kur "xtable" ir nosauktais diapazons E5: F10.

Piezīme: šī ir masīva formula, un tā jāievada ar vadības taustiņu + shift + enter.

Paskaidrojums

Būtībā šī formula izmanto masīva darbību, lai ģenerētu burtu masīvu no ievades teksta, katru burtu tulko atsevišķi par skaitli, pēc tam atkal apvieno visus ciparus un atgriež izvadi kā virkni.

Lai parsētu ievades virkni masīvā vai burtos, mēs izmantojam šādas funkcijas: MID, ROW, LEN un INDIRECT:

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

LEN atgriež ievades teksta garumu, kas ir saīsināts ar "1:" un tiek nodots netiešam kā teksts. Netiešais novērtē tekstu kā atsauci uz rindu, un funkcija ROW atgriež skaitļu masīvu uz MID:

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

Pēc tam MID katrā sākuma pozīcijā iegūst vienu rakstzīmi, un mums ir:

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

Būtībā mēs lūdzam VLOOKUP vienlaikus atrast atbilstību "a", "b" un "c". Neskaidru iemeslu dēļ mums šis masīvs ir "jānovērš" īpašā veidā, izmantojot gan T, gan IF funkcijas. Pēc VLOOKUP palaišanas mums ir:

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

un TEXTJOIN atgriež virkni "946".

Ievadiet numuru

Lai izvadītu skaitli kā gala rezultātu (virknes vietā), pievienojiet nulli. Matemātikas darbība piespiedīs virkni skaitlī.

Summu skaitļi

Apkopojot skaitļus kopā, nevis tos uzskaitot, TEXTJOIN var aizstāt ar SUM šādi:

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

Piezīme: TEXTJOIN funkcija tika ieviesta, izmantojot Office 365 abonēšanas programmu 2018. gadā.

Labas saites

Saņemiet iniciāļus no nosaukuma (Chandoo)

Interesanti raksti...