Função VBA CDATE

Função CDATE em VBA

VBA CDATE é uma função de conversão de tipo de dados que converte um tipo de dados que é texto ou string em um tipo de dados de data. Depois que o valor for convertido para o tipo de dados de data, podemos brincar com as coisas de data.

Sintaxe de CDATE

Abaixo está a sintaxe da função CDATE em VBA.

Expressão: a expressão pode ser uma string ou valor de texto ou uma variável que contém um valor a ser convertido para o tipo de dados de data.

CDATE identifica o formato de data e hora no computador em que estamos trabalhando e converte o valor fornecido no mesmo tipo de dados de data. Se você fornecer apenas dia e mês e ignorar ano, a função CDATE pegará o ano do sistema e mostrará junto com o dia e mês fornecidos.

Veremos mais e mais exemplos na seção abaixo.

Como usar a função CDATE no Excel VBA?

Exemplos da função CDATE no excel vba.

Você pode baixar este modelo VBA CDATE Excel aqui - modelo VBA CDATE Excel

Exemplo 1

Antes de mostrar o exemplo de CDATE, olhe primeiro o código abaixo.

Código:

 Sub CDATE_Example1 () Dim k As String k = "25-12" MsgBox k End Sub 

Acima, para a variável “k”, atribuí o valor como “25-12”. Quando eu executar este código, veremos o mesmo valor na caixa de mensagem do VBA.

Mas isso pode ser convertido para data usando a função VBA CDATE. Para isso, defina mais uma variável como Data.

Código:

 Dim k1 como data 

Para esta variável “k1” atribua a função CDATE e forneça a variável “k” que contém a string “25-12”. E para a caixa de mensagem mostrar o valor da variável de “k1” ao invés de “k”.

Código:

k1 = CDate (k)

Agora execute o código e veja o resultado em uma caixa de mensagem.

Portanto, o resultado é “25/12/2019”.

Observe atentamente o valor que fornecemos, fornecemos “25-12” não fornecemos ano.

Enquanto escrevia este artigo, o ano atual em meu sistema foi 2019, então o VBA CDATE converteu o valor da string "25-12" para a data e adicionou o ano do sistema 2019 a ele. Portanto, os resultados finais são assim: 25/12/2019, ou seja, 25 de dezembro de 2019.

Exemplo # 2

Agora, olhe para o código abaixo.

Código:

 Sub CDATE_Example2 () Dim k As Variant Dim kResult As Date k = 43889 kResult = CDate (k) MsgBox kResult End Sub 

No código acima para a variável “k”, apliquei o número “43889”. Todos nós sabemos que este é um número de série, mas para outra variável “KResult” convertemos este valor para a data usando a função “CDATE”.

O mesmo resultado da variável “kResult” mostrado na caixa de mensagem.

Execute o código e veja a magia da função “CDATE”.

Mostra o resultado como “28/02/2020”, se você não está familiarizado com datas no excel então deve estar se perguntando como isso aconteceu.

Por exemplo, digite o mesmo número (43889) em uma das células da planilha.

Para isso aplique o formato “DD-MM-AAAA”.

Agora clique em Ok e veja o resultado.

Agora, o resultado mudou de um número de série para a data. Como aplicamos o formato de data ao número de série, ele mostra a respectiva data.

Portanto, isso significa que o número de série 43889 é igual à data 28-02-2020.

Portanto, em nosso código VBA, a função CDATE executou a mesma coisa ao converter o valor da string em um tipo de dados de data.

Exemplo # 3

Para este exemplo, veja o código abaixo.

 Sub CDATE_Example3 () Dim Value1 Dim Value2 Dim Value3 Value1 = "24 de dezembro de 2019" Value2 = # 6/25/2018 # Value3 = "18:30:48 PM" MsgBox CDate (Value1) MsgBox CDate (Value2) MsgBox CDate ( Value3) End Sub 

Quando executarmos este código, obteremos os resultados abaixo.

Portanto, todos os valores são convertidos para o tipo de dados de data com a função CDATE.

Coisas para lembrar

  • CDATE converte apenas números e valores de string no tipo de dados de data.
  • Isso é útil quando o usamos com outras funções.
  • Se o valor do tipo de dados incorreto for fornecido, obteremos um erro de incompatibilidade de tipo.
  • Como a data e a hora são parte do número de série, ele converte a hora e a hora adequada.