VBA TimeValue

Valor de tempo em VBA é uma função embutida que também é categorizada na função de data e hora em VBA. Esta função, como o nome sugere, nos dá o valor numérico da data fornecida como um argumento, leva um único argumento que é a data e retorna o valor numérico do argumento.

O que a função de valor de tempo faz no VBA?

A função Valor de tempo no VBA Excel retorna a parte do valor de tempo da data e hora completas. A data e a hora são armazenadas como números de série no Excel. O número de série representa a DATA e o decimal representa a hora. Usando a função TimeValue, podemos obter apenas o número de série do tempo, ou seja, o número decimal.

Sintaxe da função VBA TimeValue

A sintaxe da função VBA TimeValue da seguinte maneira.

Como dissemos, a função TimeValue retorna a parte do número de série da data fornecida, que é armazenada como um valor de texto. O tempo nada mais é do que o tempo real que procuramos para obter o número de série. Lembre-se de que o valor de tempo só pode obter o número de série do tempo que está armazenado como texto, não como TIME.

Exemplos de função TimeValue com Excel VBA

Abaixo estão os exemplos da função VBA TimeValue.

Você pode baixar este modelo de função VBA TimeValue aqui - modelo de função VBA TimeValue

Exemplo de VBA TimeValue # 1

Agora, veja o exemplo simples da função VBA TimeValue.

Código:

 Sub TIMEVALUE_Function_Example1 () 'Converte a string de entrada dada em uma hora válida e exibe na tela' Declaração de variável Dim MyTime como data 'Atribui hora a uma variável MyTime = TimeValue ("28-05-2019 16:50:45")' Exibir a saída na tela MsgBox "Current Time is:" & MyTime, vbInformation, "VBA TIMEVALUE Function" End Sub 

A primeira coisa que declarei a variável “MyTime” como Date.

 Dim MyTime as Date 

Em seguida, atribuí o valor à variável aplicando TimeValue.

MyTime = TimeValue ("28-05-2019 16:50:45")

Em seguida, na caixa de mensagem, atribuí o resultado variável.

MsgBox "O tempo fornecido é:" & MyTime, vbInformation, "Função TIMEVALUE".

Se eu executar o código usando a tecla F5 ou manualmente, obteremos o resultado da seguinte maneira.

Exemplo de VBA TimeValue # 2

Para o mesmo código, declararei a variável VBA como “Double”.

Código:

 Sub TIMEVALUE_Function_Example1 () 'Converte a string de entrada dada em um tempo válido e exibe na tela' Declaração de variável Dim MyTime As Double 'Atribui tempo a uma variável MyTime = TimeValue ("28-05-2019 16:50:45")' Exibir a saída na tela MsgBox "Current Time is:" & MyTime, vbInformation, "VBA TIMEVALUE Function" End Sub 

Agora, se eu executar o código VBA manualmente ou pressionando a tecla F5, ele exibirá a parte do número de série do tempo 16:50:45.

Para sua melhor compreensão, primeiro irei inserir os números fornecidos pela caixa de mensagem do VBA para uma das células.

Agora vou aplicar o formato da hora para verificar o resultado exato.

Ao convertê-lo em um formato de hora, você pode ver a hora exata.

Exemplo de VBA TimeValue # 3

Agora, olhe para os dados abaixo.

Temos dados e tempo juntos das células A1 a A14. Para a segunda coluna, precisamos extrair apenas o valor do tempo. Como temos mais de uma célula para lidar, precisamos empregar loops para realizar o mesmo conjunto de tarefas para todas as células.

Temos dados da 1ª célula à 14ª célula, então nosso loop deve ser executado 14 vezes. Precisamos usar o loop FOR NEXT no VBA para mencionar o limite inferior e o limite superior. O código abaixo é o código já escrito para extrair o valor de hora da combinação de data e hora.

Código:

 Sub TimeValue_Example3 () Dim k As Integer For k = 1 To 14 Cells (k, 2) .Value = TimeValue (Cells (k, 1) .Value) Next k End Sub 

Quando executarmos o código, obteremos os valores como os abaixo.

Se você deseja ver a hora, aplique o formato TIME a ela.

Então, é assim que a função TIME VALUE funciona em VBA e Excel.