Як швидко перетворити дату на слова в Excel?
Загалом, ми зазвичай перетворюємо дату в інші формати чи цифри дати в Excel, але чи стикалися ви з проблемою перетворення дати в англійські слова, як показано на знімку екрана нижче? Насправді, немає вбудованої функції, яка може це впоратись, крім коду VBA.
Перетворити дату в слово за допомогою визначеної функції
Перетворити дату в слово за допомогою визначеної функції
Ось макрокод, який допоможе вам перетворити дати на слова.
1. Увімкніть аркуш, який ви використовуєте, і натисніть Alt + F11 клавіші, щоб відкрити Microsoft Visual Basic для додатків вікна.
2. клацання Insert > Модулі і вставте нижче код у сценарій.
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 - дата, яку ви використовуєте), натисніть
Що натомість? Створіть віртуальну версію себе у
клавішу та перетягніть маркер автоматичного заповнення до потрібних комірок. Дивіться знімок екрана:
Відкрийте для себе зручність миттєвого перетворення чисел у слова в Excel за допомогою функції «Числа в слова» Kutools for Excel, заощаджуючи ваш час і зусилля на створенні документів професійного вигляду без зусиль!
Відносні статті:
- Як швидко перетворити формат формату дати між європейським та американським в Excel?
- Як перетворити dD.MM.РРРР у формат дати (мМ / ДД / РРРР) в Excel?
- Як перетворити дату та мітку часу Unix в Excel?
Найкращі інструменти продуктивності офісу
Покращуйте свої навички Excel за допомогою Kutools для Excel і відчуйте ефективність, як ніколи раніше. Kutools для Excel пропонує понад 300 додаткових функцій для підвищення продуктивності та економії часу. Натисніть тут, щоб отримати функцію, яка вам найбільше потрібна...
Вкладка Office Передає інтерфейс із вкладками в Office і значно полегшує вашу роботу
- Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
- Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
- Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!