Trabalhar com Horas no VBA é bastante extenso, mas engana-se quem acha que é mais difícil que o próprio Excel…

Trabalhar com Horas no VBA

Pois é, isso mesmo, calcular horários, saldos e etc é muito mais fácil no VBA. Isso porque no VBA é mais simples de calcular horas negativas, transformar decimal em horas e etc.

Requisitos:
• Variaveis com VBA
• If e suas variações
• Conversões

Logica por trás dos códigos

 

excel jornada ponto

O VBA possui dezenas de funções para facilitar, mas só é preciso diminuir uma hora de outra!

Entretanto quando temos um problema quando temos “batidas” (principalmente no início ou meio do expediente) que ocorrem após virada da noite.
Para facilitar o entendimento, vamos pegar um exemplo, um expediente com mais de 12h iniciando as 19h até as 8h.

Casos assim é preciso verificar se a hora inicial, ou intermediária é maior que a hora inicial e se for então vamos adicionar 24h nas horas posteriores

varCalculo = 19h – 08h
varCalculo = 19h – (08h + 24h)
var calculo = 13h de jornada

Na verdade, a dificuldade de manipular as horas não está no código em si, mas na lógica!

 

Trabalhar com horas no VBA (cálculo jornada ponto)

 

Segue código para ver na prática:

Após esse código de verificações basta diminuir as horas entre as batidas.

Lembrando que cada variável horaR1, horaR2 … são variáveis com valores de horas.

 

Vídeo Para Maior Entendimento