J'ai déjà ce code sur toutes les feuilles :
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 2 Then 'si on modifie un libellé sur la colonne B
'controle doublon
On Error GoTo fin: 'cas d'une cellule vide...
'on cherche la cellule contenant le mot "TOTAL" pour en déduire la fin du tableau
With ActiveSheet.Range("B:O")
Set ici = .Find("TOTAL", LookIn:=xlValues, lookat:=xlWhole)
If Not ici Is Nothing Then
finzone = ici.Row
End If
End With
nb = WorksheetFunction.CountIf(Range("B31:B" & finzone - 1), Target) 'on compte le nombre de fois qu'il est présent
If nb > 1 Then 'si on l'a plus d'une fois
MsgBox ("Libellé déjà saisi")
Application.Undo 'on annule la saisie par l'utilisateur
End If
End If
fin:
Application.EnableEvents = True
End Sub
Je ne sais pas comment insérer celui de double zéro.