chris6999
XLDnaute Impliqué
Bonjour le forum
Avec l'aide du FORUM j'ai mis en place une macro d'alerte (msg box) lorsque la date saisie dans le colonne C est déjà connue dans la colonne.
Le problème c'est que le message s'affiche systématiquement quoi que l'on saisisse dans la cellule (que la date soit déjà connue ou non).
Quelqu'un pourrait-il me dire pourquoi cela ne fonctionne pas?
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Collec As New Collection
Dim cell As Range
If Not Intersect([C7:C20000], Target) Is Nothing And Target.Count = 1 Then
' Sur changement dans la colonne C affiche un message d'alerte si date de naissance est déjà connue dans la base
For Each cell In Range("C7:C20000")
On Error GoTo GestionDesErreurs
If cell <> "" Then
Collec.Add cell, CStr(cell)
End If
On Error GoTo 0
Next
End If
GestionDesErreurs:
If Err = 457 Then
Err = 0
MsgBox "Cette date de naissance est déjà connue dans la base" & vbCr & "Vérifier qu'il n'existe pas de dossier enregistré pour la" & vbCr & "même personne."
Exit Sub
End If
End Sub
Je mets un fichier test en pièce jointe
Merci d'avance pour votre aide
Bonne journée à tous
Avec l'aide du FORUM j'ai mis en place une macro d'alerte (msg box) lorsque la date saisie dans le colonne C est déjà connue dans la colonne.
Le problème c'est que le message s'affiche systématiquement quoi que l'on saisisse dans la cellule (que la date soit déjà connue ou non).
Quelqu'un pourrait-il me dire pourquoi cela ne fonctionne pas?
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Collec As New Collection
Dim cell As Range
If Not Intersect([C7:C20000], Target) Is Nothing And Target.Count = 1 Then
' Sur changement dans la colonne C affiche un message d'alerte si date de naissance est déjà connue dans la base
For Each cell In Range("C7:C20000")
On Error GoTo GestionDesErreurs
If cell <> "" Then
Collec.Add cell, CStr(cell)
End If
On Error GoTo 0
Next
End If
GestionDesErreurs:
If Err = 457 Then
Err = 0
MsgBox "Cette date de naissance est déjà connue dans la base" & vbCr & "Vérifier qu'il n'existe pas de dossier enregistré pour la" & vbCr & "même personne."
Exit Sub
End If
End Sub
Je mets un fichier test en pièce jointe
Merci d'avance pour votre aide
Bonne journée à tous