Eviter les doublons lors d'une deuxième saisie

Bonjour,

J'utilise un userform pour renseigner une feuille excel (Adhérents de club).

Si lors de l'enregistrement de la 1ére saisie je ne dispose pas de toutes les informations concernant 1 adhérent, comment puis-je faire pour qu'à l'enregistrement de la 2ème saisie de ce même adhérent (avec les infos manquantes), je ne crée pas de doublon mais que je renseigne les cellules vides de la feuille excel?

En utilisant comme référence le nom et prénom de l'adhérent.

Débutant en Vba, si quelqu'un pouvait m'aider...

Merci.

Bonjour et bienvenue sur le forum

Il faut que lors de la saisie d’un nom existant, la macro te signale que ce nom est déjà enregistré et te propose de modifier les données qui lui sont associées.

Sans ton fichier, difficile de te faire voir…

Bye !

Bonjour gmb, et merci de t'intéresser à mon pb.

Pour info, et tu vas le reconnaître, c'est ma première prog en vba ....

A partir du formulaire, je renseigne 3 feuilles excel.

Tu trouveras sur ces feuilles ce que je veux éviter, le même adhérent pour lequel la saisie s'est faite en 2 fois (disons pas toutes les infos la 1ére...) et qui se trouve donc sur 2 lignes différentes.

Comment regrouper ttes les infos sur 1 seule ligne?

Merci pourton aide.

Bonjour

Quelle macro !

Et tu dis que tu es débutant ? Alors Bravo !

Un seul bémol : dommage que la fonctionnalité que tu souhaites maintenant n’ait pas été envisagée au départ. A moins que quelque chose m’ait échappé : ta macro est si grosse et si complexe…

Au point où elle en est, je ne peux qu’ajouter des verrues…

Un essai à tester :

Bye !

Bonjour GMB,

Formidable ! Exceptionnel !

Tu as répondu exactement à ma demande, je rêve...

Je vais disséquer ta macro pour la comprendre et essayer de rectifier un petit détail, quand sur un doublon je réponds "Non", l'enregistrement se fait en sautant 1 ligne.

Merci pour ta réactivité et bravo pour la compétence, j'ai encore du boulot avec VBA...

Bonjour GMB,

Je reviens vers toi car malgré beaucoup de temps passé (très beaucoup...), je ne m'en sors pas.

En fait, je n'arrive pas à comprendre totalement les modifs que tu as apportées,

Mon problème est le suivant:

Lorsqu'un adhérent est déjà existant dans la base, si je clique sur "modifier" pour ajouter une info ou en modifier une, toutes les infos renseignées lors d'une précédente saisie sont effacées et je dois tout retaper.

Mon souhait serait de pouvoir les conserver, soit en n'enregistrant que la nouvelle info, soit en faisant remonter ds l'usfrm les infos déjà existantes (ce qui me parait la meilleure solution pour avoir une visu de la fiche) et d'enregistrer à nouveau la totalité des champs (sans avoir à les re-saisir).

Si tu as une idée, je te remercie de ton aide.

Bonjour

Budobille a écrit :

si je clique sur "modifier" pour ajouter une info ou en modifier une...

Où est-il ce bouton ? Je ne le vois pas...

Bye !

Merci de ta réponse.

En fait, pas de bouton "Modifier", il s'agit de la réponse à la boîte de dialogue que tu as mise en place ( qui apparaît lors de la saisie d'un nom/prenom déjà existant ds la base) "Voulez-vous modifier ou créer une nouvelle fiche?".

Petit plus, peux-tu m'expliquer les commandes que tu as ajoutées,?

Bonne journée.

Bonjour

Budobille a écrit :

peux-tu m'expliquer les commandes que tu as ajoutées,?

Première modif :

Pour savoir si le nom existe déjà, j’ai fait une macro qui se déclenche lorsqu’on saisit le prénom c’est-à-dire lors de l’exécution de Sub TxtPrénom_Change()

Cette macro, Sub VerifExistenceAdh, va voir dans les colonnes B et C de la feuille ‘’Adh’’ s’il y a un nom et un prénom identiques à ce qu’on a saisi dans l’USF.

Si oui, elle met dans des mémoires, lnAdh, lnAdr et lnCt le numéro de la ligne à laquelle se trouve ce nom (et prénom) sur les 3 feuilles.

Puis elle revient à la macro Sub TxtPrénom_Change et un message s’affiche pour demander si on veut modifier ou complététer les données du nom et prénom saisis et qui existe déjà.

Si on répond non, la variable flag prend la valeur 0 et si on répond oui, la variable flag prend la valeur 1 .

Deuxième modif :

En plus de donner la valeur 1 à la variable flag, la macro décroche et va exécuter une autre macro pour faire remonter dans l’USF les info des feuilles Adh (ligne lnAdh), Adresse (ligne lnAdr) et Contact (ligne lnCt).

Elle revient alors à son point de décrochage dans la macro Sub TxtPrénom_Change.

Lors de l’enregistrement des données de l’userform, la valeur de la variable flag permettra de savoir si les données doivent être ajoutées à la suite, sur les feuilles ou si elles doivent écraser les données existantes aux lignes lnAdh, lnAdr et lnCt.

OK ?

Bye !

Merci pour ta réactivité, tonimplication ds mon projet, et tes explications.

En fait, ce que je ne comprenais pas c'est toute la partie "ln".

Maintenant c'est clair. Je cherchais à visualiser le contenu de ces "ln" pour essayer de comprendre, je n'y suis jamais parvenu !!!

Je n'ai pas encore eu le temps de tester l'intégralité de l'usf ds toutes les configurations, mais pour l'instant tout est ok.

Encore merci et bonne soirée.

Rechercher des sujets similaires à "eviter doublons lors deuxieme saisie"