Mostra il tempo in formato hh: mm.sss usando VBA
In questo articolo creeremo una macro per formattare l’ora nel formato hh: mm.sss.
I dati grezzi per questo esempio sono costituiti da determinati valori di tempo nella colonna E.
In questo articolo, abbiamo creato una funzione definita dall’utente (o funzione personalizzata) “HHMMSSSFormat”. Questa funzione accetta il tipo di data come input e restituisce l’output nel tipo di dati stringa nel formato hh: mm.sss.
Spiegazione logica
Nella funzione “HHMMSSSFormat” per convertire 60 secondi in un numero di tre cifre, abbiamo diviso i secondi nel valore di tempo definito per 60 per ottenere la frazione per secondi definiti e quindi moltiplicato per migliaia per ottenere il numero di tre cifre.
La funzione “HHMMSSSFormat” può essere utilizzata chiamando direttamente nel foglio Excel o utilizzando la funzione all’interno dell’altra procedura (o macro).
L’immagine sotto mostra come abbiamo utilizzato la funzione “HHMMSSSFormat” nel foglio Excel per ricavare l’ora nel formato hh: mm.sss.
Abbiamo anche creato una macro “GettingCurrentTimeinHHMMSSSFormat” che utilizza la funzione “HHMMSSSFormat” per visualizzare l’ora corrente nel formato hh: mm.sss in una finestra di messaggio. L’immagine sotto mostra l’output quando eseguiamo questa macro a 3: 54: 30s.
Segui sotto per il codice
Option Explicit Function HHMMSSSFormat(DateTime As Date) As String 'function will return string value 'Declaring integer variable Dim SecondValue As Integer 'Extracting seconds from DateTime parameter SecondValue = Second(DateTime) 'Converting seconds value to three digit number SecondValue = (SecondValue / 60) * 1000 'Change the formatting of time in the required format HHMMSSSFormat = Format(Hour(DateTime), "00") & ":" & _ Format(Minute(DateTime), "00") & "." & Format(SecondValue, "000") End Function Sub GettingCurrentTimeinHHMMSSSFormat() 'Declaring string variable Dim CurrentTime As String 'Calling custom function HHMMSSSFormat CurrentTime = HHMMSSSFormat(Now) 'Displaying message box with Ok button only MsgBox CurrentTime, vbOKOnly, "Current Time" End Sub
Se ti è piaciuto questo blog, condividilo con i tuoi amici su Facebook e Facebook.
Ci piacerebbe sentire la tua opinione, facci sapere come possiamo migliorare il nostro lavoro e renderlo migliore per te. Scrivici a [email protected]