Como converter uma string em uma data em vba (com exemplos)
Você pode usar a função CDate no VBA para converter uma string de texto em uma data.
Aqui estão duas maneiras comuns de usar esse recurso na prática:
Método 1: converter string em data usando o formato padrão (MM/DD/AAAA)
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = CDate(Range(" A " & i))
Next i
End Sub
Esta macro específica converterá cada string no intervalo A2:A8 em uma data com o formato de data padrão MM/DD/AAAA.
Por exemplo, uma sequência de texto de 15/04/2023 será convertida para uma data de 15/04/2023.
Método 2: converter string em data usando um formato personalizado
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = Format(CDate(Range(" A " & i)), " MM.DD.YYYY ")
Next i
End Sub
Esta macro específica converterá cada string no intervalo A2:A8 em uma data no formato MM.DD.AAAA.
Por exemplo, uma sequência de texto de 15/04/2023 será convertida para uma data de 15/04/2023.
Os exemplos a seguir mostram como usar cada método na prática com a seguinte coluna de strings no Excel:
Exemplo 1: Converter string em data usando formato padrão
Podemos usar a seguinte macro para converter cada string na coluna A em uma data no formato padrão MM/DD/AAA:
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = CDate(Range(" A " & i))
Next i
End Sub
Quando executamos esta macro, recebemos a seguinte saída:
Observe que a coluna B converte cada string na coluna A em uma data com o formato de data padrão MM/DD/AAAA.
Exemplo 2: Converter string em data usando um formato personalizado
Podemos usar a seguinte macro para converter cada string na coluna A em uma data com um formato personalizado de MM.DD.AAA:
Sub ConvertStringToDate()
Dim i As Integer
For i = 2 To 8
Range(" B " & i) = Format(CDate(Range(" A " & i)), " MM.DD.YYYY ")
Next i
End Sub
Quando executamos esta macro, recebemos a seguinte saída:
Observe que a coluna B converte cada string na coluna A em uma data com um formato MM.DD.AAAA personalizado.
Sinta-se à vontade para usar a função Formato VBA para exibir datas no formato de sua escolha.
Nota : Você pode encontrar a documentação completa da função CDate do VBA aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:
Como converter string em int em VBA
Como converter uma string em longa no VBA
Como converter uma string em double no VBA