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

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *