Funzione Time in Excel Vba
La funzione Time() nel linguaggio Vba e in una macro Excel legge l'ora corrente nel sistema.
Time()
La funzione restituisce l'ora corrente nel tipo Date.
Un esempio pratico
In questa macro assegno alla variabile orario il risultato della funzione Time()
- Sub Prova()
- dim orario as Date
- orario = Time()
- MsgBox(orario)
- End Sub
Poi visualizzo il contenuto della variabile orario.
Lo script visualizza sullo schermo l'ora corrente.
Nota. Se non dichiaro diversamente la variabile, questa assume automaticamente il tipo Date. Quindi, avrei potuto anche evitare di definire la variabile orario.
Esempio 2
Per visualizzare soltanto il numero delle ore moltiplico per 24 l'orario corrente e lo assegno alla variabile ore.
Poi visualizzo soltanto la parte intera tramite la funzone Int().
- Sub Prova()
- orario = Time()
- ore = Int(orario*24)
- MsgBox(ore)
- End Sub
Lo script visualizza il numero di ore passate a partire dalla mezzanotte.
Esempio 3
Per visualizzare il numero di minuti passati dalla mezzanotte, moltiplico per 24*60 ossia per
- Sub Prova()
- orario = Time()
- ore = Int(orario*24*60)
- MsgBox(ore)
- End Sub
Lo script visualizza il numero di minuti trascorsi nel giorno.
Esempio 4
Per visualizzare il numero di ore a trascorse da un determinato orario del giorno diverso da mezzanotte, definisco l'orario iniziale (orario2).
Poi sottraggo orario2 dalla variabile orario.
- Sub Prova()
- orario = Time()
- orario2 = #3:00:00 PM#
- orario = orario - orario2
- ore = Int(orario*24*60)
- MsgBox(ore)
- End Sub
Lo script visualizza il numero di ore trascorse a partire dall'orario che ho indicato.
Nota. In questo caso l'ora corrente è 19:16:00 ma lo script conta il numero di ore trascorse a partire dalle 15:00:00 ossia dalle 03:00:00 PM. Per questo motivo restituisce in output 4 ore.
E così via.