Caractère persistant ???

Bonjour,

Je cherchais le moyen de rentrer des heures en tapant par exemple pour 10:00 je tape 1000, au debut je voulais un "h" au lieu des ":" mais ça marchais pô

j'ai trouvé une macro qui fonctionne à peu près mais lorsque j'efface les heures entrées, le ":" restent et impossible de les supprimer.

le problème vient surement de la macro mais d'où ?

Private Sub Worksheet_Change(ByVal Target As Range)
 Application.EnableEvents = False
 Set Var = Application.Intersect(Target, Range("F5:G51"))
 If Target.Columns.Count = 1 And Target.Rows.Count = 1 Then
     If Not Var Is Nothing And IsNumeric(Target.Value) Then
         Target.Value = Left(Format(Target, "0000"), 2) & ":" & Right(Format(Target, "0000"), 2)
     End If
 End If
 Application.EnableEvents = True
 End Sub

je vous mets un fichier de test, regardez la première semaine.

10classeur1.xlsx (13.20 Ko)

Merci

Bonjour,

À tester :

Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
Set Var = Application.Intersect(Target, Range("F5:G51"))
If Target.Columns.Count = 1 And Target.Rows.Count = 1 Then
    If Not Var Is Nothing And IsNumeric(Target.Value) Then
        If Target.Value = "" Then
            Target.Value = Left(Format(Target, "0000"), 2) & Right(Format(Target, "0000"), 2)
        Else
            Target.Value = Left(Format(Target, "0000"), 2) & ":" & Right(Format(Target, "0000"), 2)
        End If
    End If
End If
Application.EnableEvents = True
End Sub

Gelinotte

Bonjour Gelinotte,

Ta proposition fonctionne à merveille.

Je te remercie et te souhaite de bonnes fêtes de fin d'année.

Rechercher des sujets similaires à "caractere persistant"