Eviter les doublons lors d'une deuxième saisie

Y compris Power BI, Power Query et toute autre question en lien avec Excel
B
Budobille
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 3 novembre 2015
Version d'Excel : 2013 FR

Message par Budobille » 9 mai 2016, 18:14

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.
g
gmb
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'842
Appréciations reçues : 364
Inscrit le : 4 avril 2013
Version d'Excel : 2016

Message par gmb » 9 mai 2016, 18:27

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 !
B
Budobille
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 3 novembre 2015
Version d'Excel : 2013 FR

Message par Budobille » 10 mai 2016, 14:36

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.
Adhérents_20160510 - Copie.xlsm
(109.93 Kio) Téléchargé 53 fois
g
gmb
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'842
Appréciations reçues : 364
Inscrit le : 4 avril 2013
Version d'Excel : 2016

Message par gmb » 11 mai 2016, 11:28

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 :
Adhérents_20160510 -v1.xlsm
(86.22 Kio) Téléchargé 72 fois
Bye !
B
Budobille
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 3 novembre 2015
Version d'Excel : 2013 FR

Message par Budobille » 11 mai 2016, 19:07

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...
B
Budobille
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 3 novembre 2015
Version d'Excel : 2013 FR

Message par Budobille » 20 août 2016, 09:14

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.
g
gmb
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'842
Appréciations reçues : 364
Inscrit le : 4 avril 2013
Version d'Excel : 2016

Message par gmb » 20 août 2016, 21:18

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 !
B
Budobille
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 3 novembre 2015
Version d'Excel : 2013 FR

Message par Budobille » 22 août 2016, 07:58

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.
g
gmb
Fanatique d'Excel
Fanatique d'Excel
Messages : 12'842
Appréciations reçues : 364
Inscrit le : 4 avril 2013
Version d'Excel : 2016

Message par gmb » 22 août 2016, 10:48

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 !
Adhérents_20160510 -v2.xlsm
(95.04 Kio) Téléchargé 50 fois
B
Budobille
Nouveau venu
Nouveau venu
Messages : 7
Inscrit le : 3 novembre 2015
Version d'Excel : 2013 FR

Message par Budobille » 22 août 2016, 20:09

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.
Répondre Sujet précédentSujet suivant
  • Sujets similaires
    Réponses
    Vues
    Dernier message