Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("$C$2:$D$13,$H$2:$I$13")) Is Nothing Then
If Not IsNumeric(Target) Then
Application.EnableEvents = False
Target.ClearContents
Application.EnableEvents = True
Exit Sub
End If
'Si colonne C et virgule
If Target.Column = 3 Then
If InStr(1, Target.Value, ",") > 0 Then
'Transformer en entier
'L'évènement change sera rappelé et vérifiera ensuite
'Si c'est une valeur numérique
Target = CDbl(Left(Target.Value, InStr(1, Target.Value, ",") - 1))
End If
If Len(Target.Text) > 7 Then
Application.EnableEvents = False
Target.ClearContents
Application.EnableEvents = True
End If
End If
ElseIf Not Intersect(Target, Range("$A$1:$I$1")) Is Nothing Then
Dim i As Integer
Dim car As String
'Vérifie tous les caractères de la cellule
For i = 1 To Len(Target.Text)
car = Mid(Target.Text, i, 1)
If (Not car Like "[A-Z]") And (Not car = " ") Then
Target.ClearContents
Exit For
End If
Next i
End If
End Sub