Astuce: Les autres langues sont Google-Traduction. Vous pouvez visiter le English version de ce lien.
Se connecter
x
or
x
x
S'enregistrer
x

or

Comment insérer des deux-points entre les nombres pour les faire comme format d'heure automatiquement dans Excel?

Lorsque vous insérez le format d'heure dans des cellules de 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 transformer en format d'heure automatiquement dans Excel.

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

Définit automatiquement les nombres au format d'heure lorsque vous les entrez avec le code VBA


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


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

Si les chiffres sont toujours des chiffres 3 ou 4, 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érer deux-points aux nombres 1

Si les chiffres sont des chiffres 5 ou 6, 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 le bas pour les cellules que vous souhaitez contenir cette formule, et vous obtiendrez la séquence de numéros comme suit capture d'écran:

doc insérer deux-points aux nombres 2

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

doc insérer deux-points aux nombres 3


flèche bleue droite bulle Définit automatiquement les nombres au format d'heure lorsque vous les entrez avec le code VBA

Le code VBA suivant peut également vous aider à convertir automatiquement les nombres au format d'heure lorsque vous les entrez, veuillez faire ceci:

1. Aller la feuille de calcul que vous souhaitez insérer des deux-points dans les numéros automatiquement.

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

Code VBA: Auto fait les nombres au format d'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érer deux-points aux nombres 4

Remarque: Dans le code ci-dessus, A1: A20 Ce sont les cellules que vous voulez insérer plus tard, et vous pouvez changer la référence de la 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 key, le numéro sera formaté comme 10: 23: format d'heure 19 AM automatiquement selon vos besoins.

doc insérer deux-points aux nombres 5



Outils de productivité recommandés

Office Tab

étoile d'or1 Apportez des onglets pratiques à Excel et à d'autres logiciels Office, tout comme Chrome, Firefox et Internet Explorer.

Kutools for Excel

étoile d'or1 Incroyable! Augmentez votre productivité dans les minutes 5. Ne nécessite pas de compétences particulières, économisez deux heures par jour!

étoile d'or1 300 Nouvelles fonctionnalités pour Excel, rendent Excel facile et puissant:

  • Fusionner des cellules / lignes / colonnes sans perdre de données.
  • Combiner et consolider plusieurs feuilles et classeurs.
  • Comparez les gammes, copiez plusieurs gammes, convertissez le texte en date, l'unité et la conversion de devise.
  • Compter par couleurs, sous-totaux de recherche, tri avancé et super filtre,
  • Plus Sélectionner / Insérer / Supprimer / Texte / Format / Lier / Commenter / Classeurs / Feuilles de calcul Outils ...

Capture d'écran de Kutools pour Excel

Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    kyra · 8 months ago
    如果只要時跟分以及24小時制,請問可以怎麼改?
    • To post as a guest, your comment is unpublished.
      skyyang · 8 months ago
      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
  • To post as a guest, your comment is unpublished.
    Steven · 1 years ago
    Thank you. Very well illustrated.