A formatação de horas no Excel na sua digitação deve ser sempre feita utilizando “:” para separar os campos de hora e minuto 23:45.
Com esta função que adaptei para ficar mais rápida do livro VBA e Macros para Microsoft Office Excel 2007 você pode digitar os valores diretamente na célula, sem a necessidade de digitar os “:” o que torna o seu trabalho muito mais rápido.
Para isso você deve inserir o procedimento abaixo clicando no objeto do VBA diretamente na planilha que quer inserir a formatação conforme a figura.
Formatar hora – Clique para ampliar
Veja a seguir a função:
'No evento on Change é passada a posição que está sendo alterada Private Sub Worksheet_Change(ByVal Target As Range) 'Se a coluna do endereço for "A" e o valor for maior que 1 aplica a formatação If Target.Column = 1 And Target.Value > 1 Then 'Desliga a chamada do evento para que não fique recursiva a função Application.EnableEvents = False 'Realiza a formatação da hora Target.Value = Left(Target.Value, 2) & ":" & Right(Target.Value, 2) 'Liga novamente a chamada do evento para que volte a funcionar Application.EnableEvents = True End If End Sub
Com esta alteração o sistema quando for digitado na coluna “A” um valor como 2345 ele irá inserir automaticamente os “:” e ficará 23:45.
Obrigado pela visita ao blog, deixe suas impressões, dúvidas e sugestões para fazermos ele cada vez melhor.
Baixe a planilhaAbraço
Marcos Rieper