Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Format heure dans cellule

  • Initiateur de la discussion Initiateur de la discussion Mimi
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Mimi

XLDnaute Occasionnel
Bonjour à tous,
Je recherche le moyen de convertir un format heure dans une cellule :
je marque 800 dans une cellule et je voudrais que ça me donne 08:00
Comment je peux faire ?
D'avance merci
Mimi
 
Re : Format heure dans cellule

Bonjour mimi

Une macro à mettre dans ta feuille
Pense à changer le range concerné (ici, c'est A1:H10)
Et formate tes cellules en heure 😉



VB:
Private Sub Worksheet_Change(ByVal Target As Range)

        
   'Saisie heure au format 1234 et affichage en 12:34
    Dim TimeStr As String
    
    If Target.Count > 1 Or Application.CountA(Target) = 0 Then Exit Sub
    If Not Intersect(Target, Range("A1:H10")) Is Nothing Then
        If Not Intersect(Target, Range("A1:H10")) Is Nothing Then On Error GoTo EndMacro
        
        If Target.Cells.Count > 1 Then Exit Sub
        If Target.Value = "" Then Exit Sub
        
        Application.EnableEvents = False
        
        With Target
            If .HasFormula = False Then
                Select Case Len(.Value)
                    Case 1 ' e.g., 1 = 00:01 AM
                        TimeStr = "00:0" & .Value
                    Case 2 ' e.g., 12 = 00:12 AM
                        TimeStr = "00:" & .Value
                    Case 3 ' e.g., 735 = 7:35 AM
                        TimeStr = Left(.Value, 1) & ":" & _
                        Right(.Value, 2)
                    Case 4 ' e.g., 1234 = 12:34
                        TimeStr = Left(.Value, 2) & ":" & _
                        Right(.Value, 2)
                    Case 5 ' e.g., 12345 = 1:23:45 NOT 12:03:45
                        TimeStr = Left(.Value, 1) & ":" & _
                        Mid(.Value, 2, 2) & ":" & Right(.Value, 2)
                    Case 6 ' e.g., 123456 = 12:34:56
                        TimeStr = Left(.Value, 2) & ":" & _
                        Mid(.Value, 3, 2) & ":" & Right(.Value, 2)
                    Case Else
                        Err.Raise 0
                End Select
        .Value = TimeValue(TimeStr)
        End If
    End With

    Application.EnableEvents = True
    Exit Sub

EndMacro:
    MsgBox "You did not enter a valid time"
    Application.EnableEvents = True
    
    End If
End Sub

Je te rajoute un fichier exemple si besoin 😀
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
191
Réponses
6
Affichages
331
Réponses
3
Affichages
228
Réponses
2
Affichages
204
Réponses
12
Affichages
227
  • Question Question
Microsoft 365 Power Query
Réponses
2
Affichages
233
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…