Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Gerer les doublons par USERFORM

  • Initiateur de la discussion Initiateur de la discussion PatLac
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

PatLac

XLDnaute Occasionnel
Bonjour à tous !
J'ai un classeur avec 2 feuilles : 1 feuille de travail, l'autre servant de "base de données".

J'utilise sur la feuille de travail une "recherche verticale" (recherchev sur la feuil2) pour remplir les cellules.

Le soucis c'est que lorsque j'ai un doublon, la recherche s'arrête sur le premier trouvé (en l'occurence "parents1" dans mon exemple)

Le problème c'est que j'ai 4 fois "parents1" dans ma base, qui n'ont en commun que le nom, le reste étant différents.

Je voudrais savoir s'il possible de mettre en place un userform, qui reprendrait les noms trouvés et laisserait le choix avec une case à cocher de choisir l'un ou l'autre.

Je mets une exemple ci-dessous.

Merci d'avance.

Cordiales Salutations
 

Pièces jointes

Re : Gerer les doublons par USERFORM

DranReb !
Est-ce que je peux vous demander d'adapter le code à mon projet ...car trop de ligne pour moi 🙁

En fait, il faudrait que le nom (colonne "parents") soit saisissable de D8à D22, que le "ICI" apparaissent de B8 à B22 et que le chiffre apparaisse de E8 à E22 ....

ou alors :

faire en sorte que dans le USF n'apparaisse que le nom (parents) sans rien d'autre, faire abstraction de ces derniers, car j'utiliserai alors des formules "recherchev".

Après je pense que ce sera bon .... 😉

Merci d'avance.
 
Re : Gerer les doublons par USERFORM

Dans la Worksheet_SelectionChange de feuil1 changer le 2 en 4 dans If Target.Column <> 2 Then Exit Sub
Ou pour être plus près de votre demande, l'écrire comme ça:
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count <> 1 Then Exit Sub
If Intersect(Me.[D8:D22], Target) Is Nothing Then Exit Sub
UfSaisie.Afficher Target
End Sub
Et réécritre la Écrire de UfSaisie comme ça:
VB:
Private Sub Écrire(ByVal N As Long)
Dim L As Long
L = TLgn(N)
Cel.Value = ValPlg(L, 1)
Cel.Offset(, 1).Value = ValPlg(L, 3)
Cel.Offset(, -2).Value = ValPlg(L, 2)
Me.Hide
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…