VBA DateValue - Como usar a função DateValue no Excel VBA?

O que é a função VBA DateValue?

Uma função DateValue é uma função incorporada no Excel VBA na categoria de função Data / hora. Ele funciona como função VBA e função de planilha no VBA. Esta função retorna o número de série ou valor de Date fornecido no formato de representação da string, ignorando as informações de hora fornecidas pela string Date. Ele é usado de duas maneiras diferentes no Excel. Esta função é usada como uma fórmula de planilha inserida em uma célula da planilha. É utilizado como código de macro na aplicação VBA, inserindo-o através do Editor Visual Basic associado ao Microsoft Excel.

Neste artigo, vamos aprender exemplos de VBA DATEVALUE e como usá-lo com uma explicação clara.

Explicação da função VBA Datevalue

No VBA, DATEVALUE usa a seguinte sintaxe.

Esta função usa apenas um único argumento ou parâmetro

  • Data : é a data representada no formato de string
  • Retorna: Esta função retorna o valor da data quando é usada como uma função VBA. Ele retorna o valor da data quando é usado como uma função de planilha

A função VBA DateValue é capaz de interpretar dados representados em formato de texto que são mencionados em um formato Excel válido. Não é possível retornar o valor da data se a string incluir a representação de texto do dia da semana.

Os benefícios da função VBA DateValue são a extração do valor da data da string e a conversão da data com a hora na única data. Podemos simplesmente que quando uma data é fornecida com o tempo, esta função apenas o valor da data evitando o valor do tempo.

Como usar o Excel VBA DATEVALUE?

Para usar a função DateValue no Excel, primeiro precisa abrir o editor VBA.

O botão de comando precisa ser colocado na planilha do Excel para adicionar as linhas do programa VBA a ele. Para implementar as linhas do programa, o usuário precisa clicar no botão de comando na planilha do excel. Para ter uma saída válida do programa, uma entrada válida é fornecida por meio do argumento. Por exemplo, o código a seguir ajuda a criar uma macro para executar a função DateValue para extrair o valor de data do texto em VBA.

Programa VBA:

Sub Botão Date () Dim myDate As Date myDate = DateValue (“15 de agosto de 1991”) MsgBox Date (myDate) End Sub

Este código resulta na data como 15 da entrada fornecida.

Exemplos de Excel VBA DATEVALUE

Abaixo estão os exemplos de DateValue no Excel VBA.

Exemplo # 1 - Obtenha o dia, o mês e o ano de uma data

Algumas etapas são seguidas para criar e executar o programa em VBA. Isso inclui

Passo 1: Vá para a aba Desenvolvedor, coloque o cursor em uma célula da planilha Excel e clique na opção 'Inserir' e escolha 'Botão de Comando' sob Controle ActiveX, conforme mostrado na figura.

Arraste o botão para onde desejar e forneça a legenda como botão de data na janela de propriedades.

Etapa 2: Clique duas vezes no botão; ele irá redirecionar para o projeto VBA e escrever o código entre o botão de comando Sub-privado e o sub-rotina.

O código deve ser desenvolvido conforme abaixo para obter uma data, mês e ano.

Código:

Private Sub Datebutton1_Click () Dim Exampledate As Date Exampledate = DateValue ("19 de abril de 2019") MsgBox Date MsgBox Year (Exampledate) MsgBox Mês (Exampledate) End Sub

Neste código, Datebutton1_Click () é o nome e a data de exemplo são variáveis ​​com o tipo de dados Date e Msgbox para exibir a saída.

Etapa 3: durante o desenvolvimento do código, erros de incompatibilidade de tipo VBA ocorrerão e será necessário cuidar deles.

Etapa 4: Nesta etapa, execute o programa clicando na opção executar.

Ou podemos verificar ou depurar o programa passo a passo, selecionando a opção Step Into no menu Debug. Se nosso código estiver sem erros, ele exibe a saída.

Passo 5 : Quando o programa é executado, ele primeiro exibe a caixa de mensagem com a data fornecida na entrada de texto. Em seguida, clique em OK para ver o valor do ano novamente, clique em OK na caixa de mensagem para ver o valor do mês.

Nota: Estas etapas devem ser seguidas claramente para obter resultados precisos.

Exemplo # 2 - Usando a DatePart para obter as diferentes partes da data

Passo 1: Vá para a aba Excel Developer, posicione o cursor em uma célula da planilha Excel e clique na opção 'Inserir' e escolha 'Botão de Comando' sob Controle ActiveX, conforme mostrado na figura.

Etapa 2: Arraste o botão e forneça a legenda como DatePart nas propriedades.

Clique duas vezes neste botão. Ele direciona para a planilha do Editor do Visual Basic e é exibida da seguinte maneira.

Step 3: Develop the code using the DatePart with DateValue, as shown in the figure.

Code:

Private Sub Datepart1_Click() Dim partdate As Variant partdate = DateValue("8/15/1991") MsgBox partdate MsgBox Datepart("yyyy", partdate) MsgBox Datepart("dd", partdate) MsgBox Datepart("mm", partdate) MsgBox Datepart("q", partdate) End Sub

In this program, DatePart1 is the macro name, and partDate is the argument name with data type ‘variant.’ For displaying year, date, month, and a quarter, the format is applied as “yyyy,” “d,” “m,” and “q.” If we make any mistake in the format, it displays the following error.

Step 4: After successful debugging of the program, run the program by clicking on the run button to use excel shortcut key F5.

The code first displays the full date, and then after clicking every OK from the msgbox, it shows the year value after that Date value, Month Value, Quater Value, respectively.

Things to Remember About the VBA DATEVALUE

The following things must be remembered while using the DateValue function in Excel VBA

  • Run time error 13 with message Type Mismatch is displayed when the date provided to the DateValue function is not able to convert into a valid date. We need date is a proper text format
  • When we try to get the only date from the string argument with code ‘msgbox date (argument name),’ it displays the type mismatch error.
  • We can see the output of the DateValue function without opening the VBA editor. It is done by clicking the command button and select the macro created for the respective program.
  • Quando DatePart é usado para obter os valores, o formato apropriado deve ser seguido. Caso contrário, leva ao 'erro de tempo de execução 5' com mensagem de chamada de procedimento inválido ou argumento.

Artigos interessantes...