Como converter rapidamente data em palavras no Excel?
Em geral, geralmente convertemos a data para outros formatos de data ou dígitos no Excel, mas você já encontrou algum problema ao converter a data para palavras em inglês, conforme a imagem mostrada abaixo? Na verdade, não há nenhuma função incorporada que possa lidar com isso, exceto um código VBA.
Converter data em palavra com função definida
Converter data em palavra com função definida
Aqui está um código de macro que pode lhe fazer um favor na conversão de datas em palavras.
1. Habilite a folha que você usa e pressione Alt + F11 chaves para abrir Microsoft Visual Basic para Aplicações janela.
2. Clique inserção > Módulo e cole o código abaixo no script.
VBA: converter data em palavra
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. Salve o código e volte para a planilha, selecione uma célula na qual você produzirá o resultado, digite esta fórmula = DateToWords (A2) (A2 é a data que você usa), pressione Entrar e arraste a alça de preenchimento automático sobre as células de que você precisa. Veja a imagem:
Desbloqueie a conveniência de converter instantaneamente números em palavras no Excel com o recurso Números em Palavras do Kutools for Excel, economizando tempo e esforço na criação de documentos com aparência profissional sem esforço!
Artigos relativos:
- Como converter rapidamente o formato de data entre Europa e EUA no Excel?
- Como converter dD.MM.AAAA para o formato de data (mM / DD / AAAA) no Excel?
- Como converter entre data e carimbo de data / hora Unix no Excel?
Melhores ferramentas de produtividade de escritório
Aprimore suas habilidades de Excel com o Kutools para Excel e experimente uma eficiência como nunca antes. Kutools para Excel oferece mais de 300 recursos avançados para aumentar a produtividade e economizar tempo. Clique aqui para obter o recurso que você mais precisa...
Office Tab traz interface com guias para o Office e torna seu trabalho muito mais fácil
- Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
- Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!