VBA agora

Função Excel VBA Now

NOW é uma função de data e hora em VBA que é usada para obter a data e hora do sistema atual, assim como a função de planilha que não leva nenhum argumento nela, em VBA a função now também não leva nenhum argumento, a saída de retorno para esta função é data.

A função VBA NOW é semelhante à função de planilha do Excel. Assim como a função DATE no VBA “AGORA” também não tem parâmetros para passar, só precisamos passar a função com parênteses fechados ou sem a necessidade de parênteses também. Usando a função DATE no VBA, podemos gerar a data atual mostrando o sistema no qual estamos trabalhando. No entanto, tenho visto situações em que precisamos da hora atual junto com a data também. No excel, podemos fazer muitas coisas, da mesma forma, podemos gerar a data e a hora atuais com uma função simples chamada NOW no excel.

A fórmula do VBA NOW é simples.

AGORA ()

Exemplo de função NOW no VBA Excel

Veja o exemplo simples da função NOW no VBA. Siga as etapas abaixo para escrever o código VBA e ter um bom conhecimento do NOW, bem como escrever o código.

Etapa 1: inicie o subprocedimento fornecendo um nome de macro.

Código:

 Sub Now_Example1 () End Sub

Passo 2: Declare a variável como “Data”. A razão pela qual precisamos declarar a variável como “Data” porque nosso resultado final está no formato de Data e Hora.

Código:

 Sub Now_Example1 () Dim k As Date End Sub 

Passo 3: Atribua o valor à variável “k” aplicando a função VBA NOW.

Código:

 Sub Now_Example1 () Dim k As Date k = Now End Sub 

Passo 4: Agora mostre o valor da função NOW que atribuímos à variável “k” na caixa de mensagem em VBA.

Código:

 Sub Now_Example1 () Dim k As Date k = Now MsgBox k End Sub 

Ok, terminamos.

Execute o código usando a tecla F5 ou manualmente e veja qual é o resultado.

O resultado mostra 15/04/2019 às 5:03:35.

O formato de data do meu computador é “mm-dd-aaaa”.

Também podemos alterar o formato da data usando a função FORMAT. Abaixo está o código para alterar o formato da data.

Código:

 Sub Now_Example1 () Dim k As Date k = Now MsgBox Format (k, "DD-MMM-YYYY HH: MM: SS") End Sub 

Execute o código e veja a diferença.

Agora temos um formato adequado de data e hora. Com este formato, qualquer pessoa pode entender o formato de data e hora.

Volátil na natureza:

Como você pode ver no primeiro exemplo, obtivemos o resultado de tempo como 5:03:35 e no segundo exemplo, obtemos o resultado como 17:19:02. Isso mostra que a função AGORA é uma função volátil que muda a cada segundo.

Alternativa para função de temporizador em VBA

Como alternativa ao VBA TIMER, podemos usar a função “VBA NOW” para calcular o tempo total gasto pela macro para completar a tarefa.

Use o código abaixo para calcular o tempo gasto pelo seu código.

C0de:

 Sub TotalDuration () Dim k As Date k = Now '' 'Digite seu código aqui' '' MsgBox "O tempo total levado pela macro para concluir a tarefa é:" & _ Format ((Now - k), "HH: MM : SS ") End Sub 

Na área verde, copie e cole seu código.

Execute o código pressionando a tecla F5 ou pressione o botão Executar. Assim que terminar a execução, obteremos o tempo que a macro leva para concluir a mensagem da tarefa na caixa de mensagem. Abaixo está um exemplo do mesmo.

Assim, podemos usar a função NOW de várias maneiras no VBA.

Você pode baixar este modelo de função VBA agora do Excel aqui - Modelo de função VBA agora