Passer au contenu principal

Comment insérer des deux-points entre les nombres pour les rendre automatiquement au format horaire dans Excel?

Lorsque vous insérez le format de l'heure dans les cellules de la feuille de calcul, avez-vous déjà été ennuyé de taper les deux points à chaque fois? Dans cet article, je vais parler de la façon d'insérer deux points lorsque vous entrez des nombres pour les rendre automatiquement au format horaire dans Excel.

Insérez deux-points entre les nombres pour en faire un format d'heure avec des formules

Faites automatiquement les nombres au format horaire lorsque vous les entrez avec le code VBA


flèche bleue bulle droite Insérez deux-points entre les nombres pour en faire un format d'heure avec des formules

Supposons que vous ayez une liste de nombres, pour insérer les deux-points et les rendre comme format d'heure, les formules suivantes peuvent vous rendre service.

Si les nombres sont toujours à 3 ou 4 chiffres, vous pouvez utiliser cette formule:

=TIME(LEFT(A1,LEN(A1)-2),RIGHT(A1,2),0), puis faites glisser la poignée de remplissage vers les cellules que vous souhaitez contenir cette formule, et vous obtiendrez le résultat suivant selon vos besoins:

doc insère deux points aux nombres 1

Si les nombres comportent 5 ou 6 chiffres, veuillez appliquer cette formule:

=(INT(A1/10000)&":"&INT(MOD(A1,10000)/100)&":"&MOD(A1,100))+0, et faites glisser la poignée de remplissage vers les cellules que vous souhaitez contenir cette formule, et vous obtiendrez une séquence de nombres comme la capture d'écran suivante:

doc insère deux points aux nombres 2

Ensuite, vous devez formater les nombres au format horaire en cliquant sur Temps du Général liste déroulante sous le Accueil onglet, voir capture d'écran:

doc insère deux points aux nombres 3


flèche bleue bulle droite Faites automatiquement les nombres au format horaire lorsque vous les entrez avec le code VBA

Le code VBA suivant peut également vous aider à convertir automatiquement les nombres au format horaire lorsque vous les entrez, procédez comme suit:

1. Accédez à la feuille de calcul que vous souhaitez insérer automatiquement des deux-points dans les nombres.

2. Cliquez avec le bouton droit sur l'onglet de la feuille et sélectionnez Voir le code dans le menu contextuel, dans le popped out Microsoft Visual Basic pour applications fenêtre, veuillez copier et coller le code suivant dans l'espace vide Module fenêtre, voir capture d'écran:

Code VBA: faites automatiquement les nombres au format de l'heure:

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Updateby Extendoffice 20160606
    Dim xStr As String
    Dim xVal As String
    On Error GoTo EndMacro
    If Application.Intersect(Target, Range("A1:A20")) Is Nothing Then Exit Sub
    If Target.Count > 1 Then Exit Sub
    If Target.Value = "" Then Exit Sub
    Application.EnableEvents = False
    With Target
        If Not .HasFormula Then
            xVal = .Value
            Select Case Len(xVal)
                Case 1 ' e.g., 1 = 00:01 AM
                    xStr = "00:0" & xVal
                Case 2 ' e.g., 12 = 00:12 AM
                    xStr = "00:" & xVal
                Case 3 ' e.g., 735 = 7:35 AM
                    xStr = Left(xVal, 1) & ":" & Right(xVal, 2)
                Case 4 ' e.g., 1234 = 12:34
                    xStr = Left(xVal, 2) & ":" & Right(xVal, 2)
                Case 5 ' e.g., 12345 = 1:23:45 NOT 12:03:45
                    xStr = Left(xVal, 1) & ":" & Mid(xVal, 2, 2) & ":" & Right(xVal, 2)
                Case 6 ' e.g., 123456 = 12:34:56
                    xStr = Left(xVal, 2) & ":" & Mid(xVal, 3, 2) & ":" & Right(xVal, 2)
                Case Else
                    Err.Raise 0
            End Select
            .Value = TimeValue(xStr)
        End If
    End With
    Application.EnableEvents = True
    Exit Sub
EndMacro:
    MsgBox "You did not enter a valid time"
    Application.EnableEvents = True
End Sub

doc insère deux points aux nombres 4

Remarque: Dans le code ci-dessus, A1: A20 sont les cellules que vous souhaitez insérer plus tard, et vous pouvez modifier la référence de cellule selon vos besoins.

3. Et maintenant, lorsque vous entrez les nombres tels que 102319 dans la plage de cellules A1: A20, puis appuyez sur Entrer clé, le nombre sera automatiquement formaté au format 10:23:19 AM selon vos besoins.

doc insère deux points aux nombres 5

Meilleurs outils de productivité bureautique

🤖 Aide à l'IA Kutools: Révolutionner l'analyse des données en s'appuyant sur : Exécution intelligente   |  Générer du code  |  Créer des formules personnalisées  |  Analyser les données et générer des graphiques  |  Invoquer les fonctions Kutools...
Caractéristiques populaires: Rechercher, mettre en évidence ou identifier les doublons   |  Supprimer les lignes vides   |  Combinez des colonnes ou des cellules sans perdre de données   |   Tour sans formule 
Super recherche: VSearchup à critères multiples    VSearch à valeurs multiples  |   Recherche virtuelle sur plusieurs feuilles   |   Recherche floue ....
Liste déroulante avancée: Créez rapidement une liste déroulante   |  Liste déroulante dépendante   |  Liste déroulante à sélection multiple ....
Gestionnaire de colonnes: Ajouter un nombre spécifique de colonnes  |  Déplacer les colonnes  |  Basculer l'état de visibilité des colonnes masquées  |  Comparer les plages et les colonnes 
Caractéristiques en vedette: Mise au point de la grille   |  Voir Design   |   Grande barre de formule    Gestionnaire de classeurs et de feuilles   |  Centre de ressources (Texte automatique)   |  Sélecteur de date   |  Combiner des feuilles de travail   |  Crypter/déchiffrer les cellules    Envoyer des e-mails par liste   |  Super filtre   |   Filtre spécial (filtre gras/italique/barré...) ...
Les 15 meilleurs ensembles d'outils12 Texte Outils (Ajouter du texte, Supprimer les caractères, ...)   |   50+ Graphique Types (Diagramme de Gantt, ...)   |   40+ Pratique Formules (Calculer l'âge en fonction de l'anniversaire, ...)   |   19 Insertion Outils (Insérer le code QR, Insérer une image à partir du chemin, ...)   |   12 Conversion Outils (Nombres en mots, Conversion des devises, ...)   |   7 Fusionner et fractionner Outils (Lignes de combinaison avancées, Cellules divisés, ...)   |   ... et plus

Améliorez vos compétences Excel avec Kutools for Excel et faites l'expérience d'une efficacité comme jamais auparavant. Kutools for Excel offre plus de 300 fonctionnalités avancées pour augmenter la productivité et gagner du temps.  Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...

Description


Office Tab apporte une interface à onglets à Office et facilite grandement votre travail

  • Activer l'édition et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
  • Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
  • Augmente votre productivité de 50% et réduit des centaines de clics de souris chaque jour!
Comments (7)
Rated 4.5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
I know this is a very old post, but I am experiencing an error when I try to enter time between 00001 and 005959. It's either converting it to 1AM or throwing an error. Any ideas?
This comment was minimized by the moderator on the site
DZIEKUJE ZA WYJAŚNIENIE, CZY KTOŚ MOŻE PODPOWIEDZIEC CZY DA SIE TO PRZEROBIC TAK ŻEBY DZIŁAŁO NA 2 LUB WIECEJ KOLUMNACH? CHODZI O WPROWADZENIE STARTU PRACY W KOLUMNIE C A ZAKONCZENIA W KOLUMNIE D, WYNIK WYSWIETLI SIE W KOLUMNIE E
Rated 4.5 out of 5
This comment was minimized by the moderator on the site
does anyone know how to make this macro run on google sheets please?
This comment was minimized by the moderator on the site
In an earlier version of windows I was able to change the colon time delimiter to another character (usually an asterisk) to make it easier and faster to enter lots of time data. Is there still a way to do this or has it been "new & improved" into oblivion?
This comment was minimized by the moderator on the site
如果只要時跟分以及24小時制,請問可以怎麼改?
This comment was minimized by the moderator on the site
Hi, kyra,
你可以嘗試使用下面的vba來實現: (只顯示時和分)

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim xStr As String
Dim xVal As String
On Error GoTo EndMacro
If Application.Intersect(Target, Range("A1:A20")) Is Nothing Then Exit Sub
If Target.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
Application.EnableEvents = False
With Target
If Not .HasFormula Then
xVal = .Value
Select Case Len(xVal)
Case 1 ' e.g., 1 = 00:01 AM
xStr = "00:0" & xVal
Case 2 ' e.g., 12 = 00:12 AM
xStr = "00:" & xVal
Case 3 ' e.g., 735 = 7:35 AM
xStr = Left(xVal, 1) & ":" & Right(xVal, 2)
Case 4 ' e.g., 1234 = 12:34
xStr = Left(xVal, 2) & ":" & Right(xVal, 2)
Case 5 ' e.g., 12345 = 1:23:45 NOT 12:03:45
xStr = Left(xVal, 1) & ":" & Mid(xVal, 2, 2) & ":" & Right(xVal, 2)
Case 6 ' e.g., 123456 = 12:34:56
xStr = Left(xVal, 2) & ":" & Mid(xVal, 3, 2) & ":" & Right(xVal, 2)
Case Else
Err.Raise 0
End Select
.Value = Format(TimeValue(xStr), "Short Time")
End If
End With
Application.EnableEvents = True
Exit Sub
EndMacro:
MsgBox "You did not enter a valid time"
Application.EnableEvents = True
End Sub
This comment was minimized by the moderator on the site
Thank you. Very well illustrated.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations