VBA CDATE - Como usar o CDATE no Excel VBA? (com exemplos)

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 o dia e o mês e ignorar o 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.

Exemplo 1

Antes de mostrar o exemplo de CDATE, examine primeiro o código a seguir.

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 em 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” atribui a função CDATE e fornece a variável “k”, que contém a string “25-12”. E para a caixa de mensagem, mostre o valor da variável de “k1” em vez 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. Nós 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. Assim resultados finais ler como esta ie 2019/12/25, 25 th dezembro 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

In the above code for the variable “k,” I have applied the number “43889”. We all know this is a serial number, but for another variable, “KResult,” we have converted this value to date by using the “CDATE” function.

The same result of the variable “KResult” is shown in the message box.

Run the code and see the magic of the function “CDATE.”

It shows the result as “2/28/2020” if you are not familiar with dates in excel, then you must be wondering how did this happen.

For example, enter the same number (43889) in one of the cells in the spreadsheet.

For this, apply the format as “DD-MM-YYYY.”

Now click on Ok and see the result.

Now the result has changed from a serial number to date. Because we have applied date format top the serial number, it has shown the respective date.

So this means the serial number 43889 is equal to the date 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, observe 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 para o 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.

Artigos interessantes...