Afficher l’heure en format hh: mm.sss en utilisant VBA
Dans cet article, nous allons créer une macro pour formater l’heure au format hh: mm.sss.
Les données brutes pour cet exemple se composent de certaines valeurs de temps dans la colonne E.
Dans cet article, nous avons créé une fonction définie par l’utilisateur (ou fonction personnalisée) «HHMMSSSFormat». Cette fonction prend le type de date comme entrée et renvoie la sortie au format de données chaîne au format hh: mm.sss.
Explication logique
Dans la fonction «HHMMSSSFormat» pour convertir 60 secondes en un nombre à trois chiffres, nous avons divisé les secondes de la valeur de temps définie par 60 pour obtenir une fraction pour les secondes définies, puis nous l’avons multipliée par mille pour obtenir le nombre à trois chiffres.
La fonction «HHMMSSSFormat» peut être utilisée en appelant soit directement dans la feuille Excel, soit en utilisant la fonction à l’intérieur de l’autre procédure (ou macro).
L’image ci-dessous montre comment nous avons utilisé la fonction «HHMMSSSFormat» dans la feuille Excel pour dériver l’heure au format hh: mm.sss.
Nous avons également créé une macro «GettingCurrentTimeinHHMMSSSFormat» qui utilise la fonction «HHMMSSSFormat» pour afficher l’heure actuelle au format hh: mm.sss dans une boîte de message. L’image ci-dessous montre la sortie lorsque nous exécutons cette macro à 3: 54: 30s.
Veuillez suivre ci-dessous pour le code
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
Si vous avez aimé ce blog, partagez-le avec vos amis sur Facebook et Facebook.
Nous serions ravis de vous entendre, faites-nous savoir comment nous pouvons améliorer notre travail et le rendre meilleur pour vous. Écrivez-nous à [email protected]