Suite,
Sinon une variante si tu ne souhaites pas l'affichage d'erreurs.
Private Sub Worksheet_Change(ByVal Target As Range)
'Exemple pour la feuille DB avec tableau 2
For i = 1 To Sheets("BD").Range("Tableau1[Num]").Count
On Error resume Next
If Sheets("BD").Range("Tableau1[Num]").Item(i) = Target Then
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End If
Next i
End Sub
Le Numéro entré ne sera pas accepté et la cellule sera vide. Donc il faudra en trouver un autre.