Avec Excel 97 je voudrais faire un contrôle automatique de l'orthographe de
noms saisis dans une plage avec une procédure événementielle. Le code
suivant dans un premier temps me renvoyait le message d'erreur de saisie en
feuille 2 même si le nom était présent dans la plage a8:a100 de la feuille
1. Maintenant quoique je saisisse plus de message d'erreur. Comment y
remédier?
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Application.ScreenUpdating = False
Application.EnableEvents = False
Sheets(1).Select
If Sheets(1).Range("a8:a100").Find(Target) Is Nothing Then
Sheets(2).Select
MsgBox "Le nom " & UCase(Target) & vbCrLf & vbCrLf _
& "est inconnu ou mal orthographié !", vbCritical, "ERREUR DE SAISIE!"
End If
Target.ClearContents
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub
D'avance merci pour votre aide
ttigre
AV
"tiger" <tti...@free.fr> a écrit dans le message news:
#LUrAc38BHA.2076@tkmsftngp07...
Oui d'accord pour le désactivation, mais maintenant comme je l'avais dit
même quand le nom saisi est correctement orthographié j'ai toujours le
message d'erreur alors qu'il ne devrait pas y avoir de message d'erreur vu
que le nom saisi en feuille 2 existe bien en feuille 1.
Comment faire en sorte que quand le nom saisi en feuille 2 existe en feuille
1 il n'y ait plus de message d'erreur?
D'avance merci
ttigre
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error Resume Next
If Sheets(1).Range("a8:a100").Find(Target) Is Nothing Then
MsgBox "Le nom " & UCase(Target) & vbCrLf & vbCrLf _
& "est inconnu ou mal orthographié !", vbCritical, "ERREUR DE SAISIE!"
End If
Application.EnableEvents = False
Target.ClearContents
Application.EnableEvents = True
Target.Select
End Sub
PS : les Feuille(1 ou 2) sont des index et non les noms des onglets
AV
"tiger" <tti...@free.fr> a écrit dans le message news:
uIxBKC48BHA.1848@tkmsftngp05...
Vu pour l'Application.EnableEvents = False mal placé.
Encore merci
ttigre