Bonjour,
Je me casse la tête depuis un moment sur un truc qui, a priori, avait l'air tout bête.
J'ai un sous-formulaire qui sert à rajouter des noms dans des groupes.
Il y a un contrôle (liste déroulante) qui contient les groupes.
Lorsque je sélectionne un groupe, les noms liés à ce groupe apparaissent dans une zone de liste (appelé Me.Liste7).
Il y a un contrôle texte dans lequel on saisit le nom (Me.nom).
Enfin, un bouton de commande permet de sauvegarder le nouveau nom.
Je voulais que lorsque l'on sélectionne un groupe puis que l'on sauvegarde un nouveau nom, la procédure soit quittée si un même nom existe déjà.
Je ne peux pas interdire les doublons sur les noms dans la table associée car il peut y avoir le même nom dans différents groupe.
Je veux "simplement" interdire les doublons au sein du même groupe.
J'ai essayé un truc bateau au pif :
Évidemment, ça ne marche pas, ça serait trop facile.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Dim i As String Dim z As String i = Me.Liste7.Recordset z = Me.Nom.Value If z = i Then MsgBox "Ce nom existe déjà dans la liste !", , "IMPOSSIBLE !!" Exit Sub Else ...
Je suppose qu'il faut créer une boucle qui parcourt les données de la liste, mais je ne sais pas comment m'y prendre.
J'ai essayé avec for each sans succès.
Si quelqu'un a un lien ou une réponse, merci d'avance.
Partager