Формула на Excel: Превод на букви в цифри -

Съдържание

Обща формула

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

Обобщение

За да преведете букви в низ в цифри, можете да използвате формула на масив, базирана на функциите TEXTJOIN и VLOOKUP, с дефинирана таблица за превод, за да осигурите необходимите справки. В показания пример формулата в C5 е:

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

където "xtable" е наименуваният диапазон E5: F10.

Забележка: това е формула на масив и трябва да се въведе с control + shift + enter.

Обяснение

В основата си тази формула използва операция с масив, за да генерира масив от букви от входния текст, превежда всяка буква поотделно в число, след което отново обединява всички числа и връща изхода като низ.

За да анализираме входния низ в масив или букви, използваме функции MID, ROW, LEN и INDIRECT по следния начин:

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

LEN връща дължината на въведения текст, който се обединява в "1:" и се предава на INDIRECT като текст. INDIRECT оценява текста като референтен ред и функцията ROW връща масив от числа в MID:

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

След това MID извлича по един знак за всяка начална позиция и имаме:

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

По същество ние искаме VLOOKUP да намери съвпадение за "a", "b" и "c" едновременно. По неясни причини трябва да „дереферентираме“ този масив по определен начин, използвайки както функциите T, така и IF. След стартирането на VLOOKUP имаме:

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

и TEXTJOIN връща низа "946".

Изведете число

За да изведете число като краен резултат (вместо низ), добавете нула. Операцията по математика ще принуди низа в число.

Сумиращи числа

За да сумирате числата, вместо да ги изброявате, можете да замените TEXTJOIN със SUM по следния начин:

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

Забележка: Функцията TEXTJOIN е въведена чрез абонаментната програма на Office 365 през 2018 г.

Добри връзки

Вземете инициали от името (Chandoo)

Интересни статии...