Ouvrir un formulaire rempli pour modifications

lizanne828

XLDnaute Nouveau
Bonjour,

J'ai réussi grâce à une aide précieuse à réaliser un formulaire de saisie qui va remplir une feuille de données, avec des beaux menus déroulants en cascades etc.... Ces données concernent des personnes.
Pour faire des modifications dans mon tableau, je voudrais qu'en double-cliquant sur un nom, le formulaire REMPLI s'affiche, pour que je puisse modifier uniquement la donnée qui m'intéresse, et en validant, il ne me modifie dans le tableau QUE ce que j'ai changé dans le formulaire.

Je ne sais pas si mon pb est clair, je joins mon fichier test.

Bon, mon fichier test est trop gros même zippé, du coup j'espère que ma question est claire, j'ai dû l'élaguer pour qu'il passe...

Merci!!
 

Fichiers joints

Dernière édition:

CHALET53

XLDnaute Barbatruc
Re : Ouvrir un formulaire rempli pour modifications

Bonjour,

Un début de solution
Voir la macro associée à la feuille Saisie des Données
Compléter la séquence des valeurs à reprendre dans l'userform à partir de la feuille. Je n'ai pas le temps de tout faire
Le bouton Valider est rendu inutilisable
Le bouton Modifier fait appel à la commande Valider en forçant le numéro de ligne à celle à modifier

a+
 

Fichiers joints

lizanne828

XLDnaute Nouveau
Re : Ouvrir un formulaire rempli pour modifications

Bonjour et vraiment bravo, ça fonctionne!
Par contre, le code me parle bien, je comprends la logique, mais je ne comprends pas comment le code "Flag=1" dans le bouton "modifier" suffit à changer l'item qu'on vient de modifier?
Je ne connais pas l'instruction "flag", et ce que j'ai trouvé sur internet ne m'aide pas à comprendre comment cette simple ligne peut effectuer ma modification.
Alors la macro marche et je vais pouvoir la finir, mais j'aimerais comprendre. Si tu as le temps de m'expliquer brièvement, j'en serais ravie!

Merci!
 

lizanne828

XLDnaute Nouveau
Re : Ouvrir un formulaire rempli pour modifications

Bonjour et vraiment bravo, ça fonctionne!
Par contre, le code me parle bien, je comprends la logique, mais je ne comprends pas comment le code "Flag=1" dans le bouton "modifier" suffit à changer l'item qu'on vient de modifier?
Je ne connais pas l'instruction "flag", et ce que j'ai trouvé sur internet ne m'aide pas à comprendre comment cette simple ligne peut effectuer ma modification.
Alors la macro marche et je vais pouvoir la finir, mais j'aimerais comprendre. Si tu as le temps de m'expliquer brièvement, j'en serais ravie!

Merci!
 

CHALET53

XLDnaute Barbatruc
Re : Ouvrir un formulaire rempli pour modifications

Re,

Le flag ne modifie rien du tout : il sert uniquement d'aiguillage

Pour les modifications, j'appelle le même programme que pour une création. Or ce programme si je ne lui dis pas en entrée qu'il s'agit d'une modification, il va écrire le contenu dans la première ligne disponible à la fin du tableau
Dans la macro événementielle, je mets une variable (flag) à 1
Je teste sa valeur en entrée du programme Validation : si la valeur est à 1 je force le Dnlig à la valeur de la ligne modififée : ligne
J'en profite pour remettre à 0 la valeur de flag
Le contenu du Userform est envoyé sur la ligne modifiée
La variable flag est définie en Public pour être reconnue dans tous les modules

Parfois très utile les aiguillages
Est-ce clair ?
 

lizanne828

XLDnaute Nouveau
Re : Ouvrir un formulaire rempli pour modifications

Eurêka!

Je n'avais pas vu que tu avais rajouté dans le code du bouton valider:

If flag = 1 Then Nlign = ligne Else Nlign = Sheets("Saisie des données").Range("A1000").End(xlUp).Row + 1
flag = 0

Du coup il recharge toutes les variables de mon formulaire, et va les remettre dans mon tableau sur la ligne où je suis...Et donc de fait il me prendra les modifications ou même les suppressions, sur tous les items que je veux!
Je ne connaissais pas cette astuce, je vais pouvoir la réutiliser pour d'autres choses.
Tout s'éclaire, et un grand merci!!!

Bonne journée
 

lizanne828

XLDnaute Nouveau
Re : Ouvrir un formulaire rempli pour modifications

Hello,

Je reviens avec mon fichier fini, mais avec 2 "bugs":

-le double click sur les noms marchent certaines fois et d'autres non...
-quand on valide "modifier", une ligne s'ajoute au lieu de modifier celle sur laquelle on veut travailler...

Ci-joint mon fichier parce que ça fait des heures que je suis dessus, et je craque alors que ça doit être tout bête!...

Mon fichier est trop lourd même en le compressant... j'essaie d'envoyer le lien googledrive:

https://docs.google.com/spreadsheets/d/1tkxjeDkh-pXpArnFZtCcnO2QUfD4-n-bQbydZaslFn4/edit?usp=sharing


Merci!
 

lizanne828

XLDnaute Nouveau
Re : Ouvrir un formulaire rempli pour modifications

Je ne sais pas si les personnes extérieures peuvent télécharger le fichier comme ça?
 

CHALET53

XLDnaute Barbatruc
Re : Ouvrir un formulaire rempli pour modifications

Re,

Je peux ouvrir le lien
Je n'accède pas aux macros
Jusqu'à preuve du contraire, ce n'est pas possible
Joindre un fichier directement sur ce post
 

Discussions similaires


Haut Bas