Macro checkbox, userform et copie de données
Elodie
-
Elodie -
Elodie -
Bonjour,
J'ai un fichier de suivi d'avancement d'un projet sur lequel je souhaite pouvoir cocher une checkbox à chaque étape. Lorsque l'on coche la case, un userform s'ouvre dans lequel on renseigne un certain nombre d'informations.
Jusque là tout va bien
Ce que je voudrais faire c'est que lorsque je valide ce userform, les informations contenues dans les textbox se recopient sur mon feuille contenant la checkbox, plus spécifiquement sur la meme ligne.
Le problème c'est que j'ai autant de checkbox que de lignes et que je ne sais pas comment faire le lien entre checkbox et validation du userform.
Je sais pas si c'est très clair. En gros, si je coche la checkbox qui est en J5, je veux que les informations des textbox du userform soient copiées dans les case K5, L5...
Je voulais vous mettre un fichier exemple mais cijoint à l'air de connaitre des problèmes aujourd'hui...
Merci de votre aide !
Elodie
J'ai un fichier de suivi d'avancement d'un projet sur lequel je souhaite pouvoir cocher une checkbox à chaque étape. Lorsque l'on coche la case, un userform s'ouvre dans lequel on renseigne un certain nombre d'informations.
Jusque là tout va bien
Ce que je voudrais faire c'est que lorsque je valide ce userform, les informations contenues dans les textbox se recopient sur mon feuille contenant la checkbox, plus spécifiquement sur la meme ligne.
Le problème c'est que j'ai autant de checkbox que de lignes et que je ne sais pas comment faire le lien entre checkbox et validation du userform.
Je sais pas si c'est très clair. En gros, si je coche la checkbox qui est en J5, je veux que les informations des textbox du userform soient copiées dans les case K5, L5...
Je voulais vous mettre un fichier exemple mais cijoint à l'air de connaitre des problèmes aujourd'hui...
Merci de votre aide !
Elodie
A voir également:
- Macro checkbox, userform et copie de données
- Fuite données maif - Guide
- Copie cachée - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Super copie - Télécharger - Gestion de fichiers
- Copie écran samsung - Guide
1 réponse
Bonjour,
tout d'abord, comment provoques-tu l'apparition de ton userform?
As-tu un code par checkbox, ou utilises-tu un module de classe (qui te permettrait de n'avoir qu'un seul code)?
Si tu as un code par checkbox, tu peux faire comme ceci :
Tout d'abord, dans un module standard (insertion/module), tu déclares ta variable "Lig" en Public :
et dans le code de ton checkbox, tu entres ceci :
Nota, si tu décoches le checkbox, l'usf n'apparaîtra pas avec ce code (1ère ligne)
tu peux ensuite utiliser la variable "Lig" comme ceci :
Pour bien positionner ton checkbox sur la ligne voulue, tu cliques dessus en mode création, et en maintenant le clic gauche appuyé, tu appuies sur la touche "Alt", et tu places ton checkbox en haut de la cellule (le fait d'appuyer sur "Alt" te permet de positionner ton objet par rapport aux bordures de cellule)
Bon courage
tout d'abord, comment provoques-tu l'apparition de ton userform?
As-tu un code par checkbox, ou utilises-tu un module de classe (qui te permettrait de n'avoir qu'un seul code)?
Si tu as un code par checkbox, tu peux faire comme ceci :
Tout d'abord, dans un module standard (insertion/module), tu déclares ta variable "Lig" en Public :
Public Lig As Long
et dans le code de ton checkbox, tu entres ceci :
Private Sub CheckBox1_Click() If Not Me.CheckBox1 Then Exit Sub Lig = Me.CheckBox1.TopLeftCell.Row UserForm1.Show End Sub
Nota, si tu décoches le checkbox, l'usf n'apparaîtra pas avec ce code (1ère ligne)
tu peux ensuite utiliser la variable "Lig" comme ceci :
Sheets("Feuil1").Cells(Lig, 7).Value = Me.TextBox1
Pour bien positionner ton checkbox sur la ligne voulue, tu cliques dessus en mode création, et en maintenant le clic gauche appuyé, tu appuies sur la touche "Alt", et tu places ton checkbox en haut de la cellule (le fait d'appuyer sur "Alt" te permet de positionner ton objet par rapport aux bordures de cellule)
Bon courage
Idéalement il me faudrait un seul code, donc l'utililsation d'un module de classe car mon fichier peut avoir plus de 1000 lignes, ensuite, je souhaite pouvoir avoir une checkbox par ligne, donc le "TopLeftCell" n'est pas possible...
Une idée pour m'aider ?
Merci