Private Sub Worksheet_Change(ByVal Target As Range)
Set Target = Intersect(Target, [B2:D10000], UsedRange) 'plage à adapter
If Target Is Nothing Then Exit Sub
Dim tablo, i&, x$, n As Byte
For Each Target In Target.Areas 'si entrées ou effacements multiples
tablo = Target.Resize(, 2) 'matrice, plus rapide, au moins 2 éléments
For i = 1 To UBound(tablo)
x = CStr(tablo(i, 1))
If x <> "" Then
n = Val(Left(x, 1))
If Not x Like "#T ####" Or n = 0 Or n > 4 Then
Application.EnableEvents = False
Application.Undo 'annule les entrées
Application.EnableEvents = True
Exit Sub
End If
End If
Next i, Target
End Sub