Jak rychle převést datum na slova v aplikaci Excel?
Obecně obvykle převedeme datum do jiných formátů data nebo číslic v aplikaci Excel, ale narazili jste někdy na problém s převodem data na anglická slova, jak je zobrazeno níže? Ve skutečnosti neexistuje žádná vestavěná funkce, která by to zvládla, ale kód VBA.
Převeďte datum na slovo pomocí definované funkce
Převeďte datum na slovo pomocí definované funkce
Zde je kód makra, který vám udělá laskavost při převodu dat na slova.
1. Povolte list, který používáte, a stiskněte Alt + F11 klíče k otevření Microsoft Visual Basic pro aplikace okno.
2. cvaknutí Vložit > Modul a vložte níže uvedený kód do skriptu.
VBA: Převést datum na slovo
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. Uložte kód a vraťte se na list, vyberte buňku, do které bude výsledek odeslán, zadejte tento vzorec = DateToWords (A2) (A2 je datum, které používáte), stiskněte vstoupit a přetáhněte rukojeť automatického vyplňování přes buňky, které potřebujete. Viz snímek obrazovky:
Odemkněte pohodlí okamžitého převodu čísel na slova v Excelu s funkcí Čísla na slova Kutools for Excel, což vám ušetří čas a úsilí při vytváření profesionálně vypadajících dokumentů bez námahy!
Relativní články:
- Jak rychle převést formát data mezi Evropem a USA v aplikaci Excel?
- Jak převést dD.MM.RRRR do formátu data (mM / DD / RRRR) v aplikaci Excel?
- Jak převést mezi časovým razítkem data a unixu v aplikaci Excel?
Nejlepší nástroje pro produktivitu v kanceláři
Rozšiřte své dovednosti Excel pomocí Kutools pro Excel a zažijte efektivitu jako nikdy předtím. Kutools for Excel nabízí více než 300 pokročilých funkcí pro zvýšení produktivity a úsporu času. Kliknutím sem získáte funkci, kterou nejvíce potřebujete...
Office Tab přináší do Office rozhraní s kartami a usnadňuje vám práci
- Povolte úpravy a čtení na kartách ve Wordu, Excelu, PowerPointu, Publisher, Access, Visio a Project.
- Otevřete a vytvořte více dokumentů na nových kartách ve stejném okně, nikoli v nových oknech.
- Zvyšuje vaši produktivitu o 50%a snižuje stovky kliknutí myší každý den!