Преобразувайте числа с текст в буква с формула; Градинарство на данни

числа
Често виждам въпроса в различни форуми дали цифрите могат да се пишат с букви в Excel. За съжаление няма вградена формула за това, но така наречената потребителска функция може да бъде програмирана в Visual Basic.

Сега искам да покажа различно решение, което не изисква програмиране. Историята започна преди години, когато беше предложено в LinkedIn в групата на Excel Hero да се състави формула на английски, която преобразува числата в текст. Разбира се, като унгарец, веднага си помислих, че това трябва да се направи и на унгарски - тъй като унгарският език формира числа въз основа на по-просто правило (мисля само за образуването на десетки).

Така че има формула, която решава преобразуването на текст само с помощта на вградените формули на Excel - тя все още не е публикувана. Сега е моментът да го споделите и с унгарски читатели!

Можете да изтеглите файла от тук.

Използваме две посочени константи във формулата - те са необходими, за да не е твърде дълга формулата:

Ако искате да използвате формулата в друг файл, всичко, което трябва да направите, е да копирате клетката по обичайния начин (copy-paste, Ctrl + C, Ctrl + V) и тези посочени константи автоматично ще бъдат прехвърлени и във вашия файл . Можете да го проверите в диспечера на имената (Ctrl + F3).

Тази публикация е базирана на статия в нашия английски блог, където ще намерите английската и италианската формули, както и ще съберете допълнителни езици там.

Попитайте ни в нашата помощна група на Excel или следвайте Data Gardening във Facebook!

Бих искал вашата помощ за това как да вмъкнете символа * в началото и края на отпечатания текст за метода, представен в статията? Нуждаете се от този допълнителен знак, за да попълните чек.

Благодаря Ви предварително за отговора.

  • ttdani на 22.07.2015 в 16:31
  • #
  • Отговор

Няма да работи през 2003 г. Файлът се отваря, добре е веднага щом копирам формулата, тя не отива.

Междувременно го реших. Благодаря ти за усилията.

  • Kris на 29.07.2015 г. в 20:56
    Автор
  • #
  • Отговор

Здравей Гергели!
Извинете, че отговорих точно сега - бяхме на почивка. 🙂
Радвам се, че успяхте да го разрешите!
Здравейте:
Крис

  • Imre Virág на 31 август 2015 в 19:16
  • #
  • Отговор

Решението е много добро, защото използва вътрешни формули. За съжаление обаче не отговаря напълно на правилата на унгарския правопис. Вижте 100, т.е. сто, не сто или 200, т.е. двеста и не двеста. Но мисля, че и това би било възможно.
Предпочитах да създам модул от клас vba, недостатъкът на който е, че той работи само в дадената работна книга (или в работната книга, отворена на дадената машина).
Изглежда така:

Функция с текст (променлива As Double)

‘Резервации, разяснения
Затъмнени локали (100)
число = променлива
дължина = лен (брой)
текст = “”
пълно = "
число = "

‘Деление на числа
Ако Fix (число) = число Тогава
За i = дължина До 1 стъпка -1
локални стойности (i) = Val (Mid (брой, дължина - (i - 1), 1))
След това i
Иначе
с текст = "# НЕ ЦЯЛО!"
Функция за изход
Край ако

‘Нула се третира отделно
Ако число = 0 Тогава с текст = „нула“: Излезте от функцията

'преобразуване
За i = дължина До 1 стъпка -1
Изберете Case i
Дело 24, 21, 18, 15, 12, 9, 6, 3
GoSub Стотици
Дело 23, 20, 17, 14, 11, 8, 5, 2
GoSub Десет
Дело 22, 19, 16, 13, 10, 7, 4, 1
GoSub Някои
Край на избора
Именуване на GoSub
пълен текст = пълен текст и текст и номер
текст = “”
число = "
След това i

‘Върнете резултат
с текст = пълен текст

- Избиратели
Стотици:
Местни жители на избрани случаи (i)
Случай 1
текст = "сто"
Случай 2
text = "двеста"
Случай 3
текст = „триста“
Случай 4
текст = „четиристотин“
Случай 5
текст = „петстотин“
Случай 6
текст = „шестстотин“
Случай 7
text = "седемстотин"
Случай 8
текст = „осемстотин“
Дело 9
текст = „деветстотин“
Край на избора
Връщане

Десети:
Местни жители на избрани случаи (i)
Случай 1
Ако локални стойности (i - 1) = 0 Тогава текст = „десет“ Друг текст = „десет“
Случай 2
Ако местните (i - 1) = 0 Тогава текст = „двадесет“ Първи текст = „двадесет“
Случай 3
текст = „тридесет“
Случай 4
текст = „четиридесет“
Случай 5
текст = „петдесет“
Случай 6
текст = “шестдесет”
Случай 7
текст = „седемдесет“
Случай 8
текст = „осемдесет“
Дело 9
текст = „деветдесет“
Край на избора
Връщане

Някои:
Местни жители на избрани случаи (i)
Случай 1
Ако i = 1 Тогава текст = "един"
Ако i = 4 и местни стойности (5) “” Тогава текст = “one”
Ако i = 4 И локални стойности (5) = " Тогава текст = "
Случай 2
Ако i = 1 Тогава текст = "две" Първи текст = "две"
Случай 3
текст = „три“
Случай 4
текст = „четири“
Случай 5
текст = "пет"
Случай 6
текст = „шест“
Случай 7
text = „седмица“
Случай 8
текст = "осем"
Дело 9
текст = „девет“
Край на избора
Връщане

Име:
Изберете Case i
Дело 22
число = "трилион-"
Дело 19
брой = "трилион"
Случай 16
number = "билярд"
Дело 13
брой = "трилион"
Дело 10
брой = "милиард-"
Случай 7
брой = "милион"
Случай 4
Ако szam Szilágyi Árpád на 06.02.2016 в 19:54

  • #
  • Отговор