Как быстро преобразовать дату в текст в Excel?
Обычно мы преобразуем дату в другие форматы даты или в числа в Excel, но приходилось ли вам сталкиваться с задачей преобразования даты в английские слова, как показано на скриншоте ниже? На самом деле, встроенной функции для этого нет, но можно воспользоваться кодом VBA.
Преобразование даты в слова с помощью пользовательской функции
Преобразование даты в слова с помощью пользовательской функции
Вот макрос, который поможет вам преобразовать даты в текст.
1. Активируйте нужный лист и нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic для приложений.
2. Нажмите Вставка > Модуль и вставьте приведённый ниже код в скрипт.
VBA: Преобразование даты в слова
Function DateToWords(ByVal xRgVal As Date) As String
' Update by Extendoffice on 20240926
Dim xYear As String
Dim Hundreds As String
Dim Decades As String
Dim xTensArr As Variant
Dim xOrdArr As Variant
Dim xCardArr As Variant
' Initialize arrays
xOrdArr = Array("First", "Second", "Third", "Fourth", "Fifth", "Sixth", _
"Seventh", "Eighth", "Ninth", "Tenth", "Eleventh", "Twelfth", _
"Thirteenth", "Fourteenth", "Fifteenth", "Sixteenth", _
"Seventeenth", "Eighteenth", "Nineteenth", "Twentieth", _
"Twenty-first", "Twenty-second", "Twenty-third", "Twenty-fourth", _
"Twenty-fifth", "Twenty-sixth", "Twenty-seventh", "Twenty-eighth", _
"Twenty-ninth", "Thirtieth", "Thirty-first")
xCardArr = Array("", "One", "Two", "Three", "Four", "Five", "Six", "Seven", "Eight", "Nine", _
"Ten", "Eleven", "Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", _
"Seventeen", "Eighteen", "Nineteen")
xTensArr = Array("Twenty", "Thirty", "Forty", "Fifty", "Sixty", "Seventy", "Eighty", "Ninety")
' Extract year
xYear = CStr(Year(xRgVal))
Decades = Mid$(xYear, 3)
' Handle decades
If CInt(Decades) < 20 Then
Decades = xCardArr(CInt(Decades))
Else
Decades = xTensArr(CInt(Left$(Decades, 1)) - 2) & "-" & xCardArr(CInt(Right$(Decades, 1)))
End If
' Handle hundreds
Hundreds = Mid$(xYear, 2, 1)
If CInt(Hundreds) Then
Hundreds = xCardArr(CInt(Hundreds)) & " Hundred "
Else
Hundreds = ""
End If
' Construct English representation of the date
DateToWords = xOrdArr(Day(xRgVal) - 1) & " " & Format$(xRgVal, "mmmm") & " " & _
xCardArr(CInt(Left$(xYear, 1))) & " Thousand " & Hundreds & Decades
End Function

3. Сохраните код и вернитесь на лист. Выберите ячейку, в которую нужно вывести результат, введите формулу =DateToWords(A2) (A2 — используемая дата), нажмите клавишу Enter и протяните маркер автозаполнения до нужных ячеек. См. скриншот:

Воспользуйтесь удобством мгновенного преобразования чисел в слова в Excel с помощью функции «Преобразовать в слова» от Kutools для Excel — экономьте время и усилия, создавая профессионально оформленные документы без лишних хлопот!
Перейти к бесплатной загрузке сейчас

Связанные статьи:
- Как быстро преобразовать формат даты между европейским и американским в Excel?
- Как преобразовать дату из формата ДД.ММ.ГГГГ в формат ММ/ДД/ГГГГ в Excel?
- Как преобразовать дату в метку времени Unix и обратно в Excel?
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек