VBA - checkbox à nom variable
Résolu/Fermé
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
-
15 déc. 2011 à 07:35
Phoenellion Messages postés 116 Date d'inscription dimanche 14 septembre 2008 Statut Membre Dernière intervention 30 août 2012 - 21 déc. 2011 à 00:49
Phoenellion Messages postés 116 Date d'inscription dimanche 14 septembre 2008 Statut Membre Dernière intervention 30 août 2012 - 21 déc. 2011 à 00:49
9 réponses
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
15 déc. 2011 à 08:33
15 déc. 2011 à 08:33
Bonjour,
Ma question : pourquoi faire?
Ma réponse à ton problème : on ne peux pas définir la propriété name d'un contrôle déjà existant. Un code comme celui-ci plante :
Par contre, il est possible d'ajouter dynamiquement des contrôles à un UserForm et donc de les nommer comme l'on veux. Le code suivant, au chargement de l'userform, va y ajouter un checkbox et le renommer...
Donc dis nous exactement le but et le pourquoi du comment de ce que tu souhaites réaliser...
Ma question : pourquoi faire?
Ma réponse à ton problème : on ne peux pas définir la propriété name d'un contrôle déjà existant. Un code comme celui-ci plante :
CheckBox1.Name = "toto"
Par contre, il est possible d'ajouter dynamiquement des contrôles à un UserForm et donc de les nommer comme l'on veux. Le code suivant, au chargement de l'userform, va y ajouter un checkbox et le renommer...
Private Sub UserForm_Initialize() Dim Ctrl As Control Set Ctrl = Me.Controls.Add("forms.CheckBox.1") If Range("A1") <> "" Then With Ctrl .Name = Range("A1") End With End If End Sub
Donc dis nous exactement le but et le pourquoi du comment de ce que tu souhaites réaliser...
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
15 déc. 2011 à 10:37
15 déc. 2011 à 10:37
Bonjour,
Je ne comprend pas !!
Veux-tu expliciter..
J'aimerais connaître le code permettant de lier le nom d'une checkbox (propriété -> name) au contenu d'une cellule.
A+
Je ne comprend pas !!
Veux-tu expliciter..
J'aimerais connaître le code permettant de lier le nom d'une checkbox (propriété -> name) au contenu d'une cellule.
A+
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
33
16 déc. 2011 à 11:50
16 déc. 2011 à 11:50
Salut, et merci de vos réponses (à tout le moins : de vous pencher sur le problème).
Pijaku, j'ai lu ton code, il pourrait suffire je pense, à ceci près que :
- j'ai quelque chose comme 100 fournisseurs.
- on ne définit pas la position de la checkbox, donc s'il faut en générer plusieurs, il faut pouvoir préciser l'emplacement précis de la checkbox créée
- la longueur du nom d'un fournisseur est très variable (entre 5 et 30 caractères)
Pour l'explication en détail, voilà le topo (bonne lecture !):
D'un côté, j'ai une basse de donnée compilée sur Excel (2007) qui compte 55 000 lignes pour 254 colonnes (pas le choix, ça ne dépend pas de moi, je fais avec).
Dans cette bdd, j'ai une colonne "fournisseur" qui indique le numéro de fournisseur de l'article.
De l'autre côté, j'ai un classeur "liste des fournisseurs", avec donc un nom qui correspond à chaque numéro de fournisseur.
/!\ Piège, cette liste évolue avec le temps sans que j'en sois informé /!\
J'ai déjà codé une macro qui permet d'extraire et de mettre dans un nouveau classeur les lignes d'articles correspondant au(x) fournisseur(s) qui m'intéresse(nt).
Mon problème le voici :
Actuellement, voici comme agit la macro :
1 - je vais dans le classeur "liste de fournisseurs" je mets 1 devant les fournisseurs qui m'intéressent, j'enregistre et je ferme.
2 - je lance la macro qui va lire la "liste des fournisseurs"
3 - pour chaque fournisseur pour lesquelles la colonne "choix" comporte "1", elle mémorise le numéro de fournisseur correspondant
4 - la macro va ensuite la colonne fournisseur de ma bdd et copie toutes les lignes correspondantes dans un nouveau classeur "extraction par fournisseurs".
Cela pose donc un problème majeur :
je suis le seul (sachant comment la macro fonctionne) à pouvoir faire ces extractions.
Or, je dois créer un outils d'utilisation simple pour que n'importe qui (des gens qui ne veulent que cliquer et attendre, disons-le) puisse faire une extraction à sa convenance.
Si je commence à leur dire "tu ouvres ce ficher, tu mets 1 dans "cette" colonne devant ton fournisseur,tu enregistres, tu fermes et tu ouvres ce fichier et tu attends". On va me regarder avec des yeux ronds.
Une seule solution s'impose : sélectionner les fournisseurs à extraire via un userform et des checkbox à cocher. C'est simple, esthétique, et efficace. (non ?)
Ce que je veux faire :
1 - L'utilisateur ouvre un classeur excel pour lequel je paramètre le lancement d'une macro à l'ouverture. (je sais faire)
2 - L'utilisateur voit une fenêtre (userform de sélection) et coche les fournisseurs qui l'intéressent
/!\ Il y a plusieurs catégories de fournisseurs, donc un onglet par catégorie serait l'idéal), mais l'extraction doit pouvoir englober des fournisseurs de toues catégories)/!\
3 - L'utilisateur clique sur un bouton "Extraire" qui va alors lancer l'extraction de tous les articles correspondant à sa sélection.
MAIS, comme la liste de fournisseurs peut changer à tout moment, le userform qui contient les fournisseurs à extraire DOIT IMPÉRATIVEMENT être généré en fonction de la liste de fournisseurs.
Je dois donc faire en sorte que :
- la macro affiche autant de checkbox que de fournisseurs
- que le nom de la checkbox comporte le numéro de fournisseur
- que chaque checkbox créer apparaisse dans le bon onglet (catégorie) s'il vous plaît.
En ce qui concerne la taille de la userform, elle doit de toute manière occuper tout l'écran donc pas de soucis de place.
Voilà, j'espère que j'ai été assez claire. N'hésitez pas si vous avez besoin d'éclaircissements. Et encore merci d'essayer de m'aider. Il y a encore 1 mois je ne savais même pas pas faire un "Cells(x,y).Select"...
D'après le code que Pijaku m'a mis, voici ce qui me vient à l'esprit :
Après, je peux me débrouiller avec des conditions qui ferons que suivant la valeur de z, x et y varient pour placer la checkbox au bon endroit.
Reste encore à créer les onglets, les nommer, et envoyer chaque checkbox dans le bon onglet
Pijaku, j'ai lu ton code, il pourrait suffire je pense, à ceci près que :
- j'ai quelque chose comme 100 fournisseurs.
- on ne définit pas la position de la checkbox, donc s'il faut en générer plusieurs, il faut pouvoir préciser l'emplacement précis de la checkbox créée
- la longueur du nom d'un fournisseur est très variable (entre 5 et 30 caractères)
Pour l'explication en détail, voilà le topo (bonne lecture !):
D'un côté, j'ai une basse de donnée compilée sur Excel (2007) qui compte 55 000 lignes pour 254 colonnes (pas le choix, ça ne dépend pas de moi, je fais avec).
Dans cette bdd, j'ai une colonne "fournisseur" qui indique le numéro de fournisseur de l'article.
De l'autre côté, j'ai un classeur "liste des fournisseurs", avec donc un nom qui correspond à chaque numéro de fournisseur.
/!\ Piège, cette liste évolue avec le temps sans que j'en sois informé /!\
J'ai déjà codé une macro qui permet d'extraire et de mettre dans un nouveau classeur les lignes d'articles correspondant au(x) fournisseur(s) qui m'intéresse(nt).
Mon problème le voici :
Actuellement, voici comme agit la macro :
1 - je vais dans le classeur "liste de fournisseurs" je mets 1 devant les fournisseurs qui m'intéressent, j'enregistre et je ferme.
2 - je lance la macro qui va lire la "liste des fournisseurs"
3 - pour chaque fournisseur pour lesquelles la colonne "choix" comporte "1", elle mémorise le numéro de fournisseur correspondant
4 - la macro va ensuite la colonne fournisseur de ma bdd et copie toutes les lignes correspondantes dans un nouveau classeur "extraction par fournisseurs".
Cela pose donc un problème majeur :
je suis le seul (sachant comment la macro fonctionne) à pouvoir faire ces extractions.
Or, je dois créer un outils d'utilisation simple pour que n'importe qui (des gens qui ne veulent que cliquer et attendre, disons-le) puisse faire une extraction à sa convenance.
Si je commence à leur dire "tu ouvres ce ficher, tu mets 1 dans "cette" colonne devant ton fournisseur,tu enregistres, tu fermes et tu ouvres ce fichier et tu attends". On va me regarder avec des yeux ronds.
Une seule solution s'impose : sélectionner les fournisseurs à extraire via un userform et des checkbox à cocher. C'est simple, esthétique, et efficace. (non ?)
Ce que je veux faire :
1 - L'utilisateur ouvre un classeur excel pour lequel je paramètre le lancement d'une macro à l'ouverture. (je sais faire)
2 - L'utilisateur voit une fenêtre (userform de sélection) et coche les fournisseurs qui l'intéressent
/!\ Il y a plusieurs catégories de fournisseurs, donc un onglet par catégorie serait l'idéal), mais l'extraction doit pouvoir englober des fournisseurs de toues catégories)/!\
3 - L'utilisateur clique sur un bouton "Extraire" qui va alors lancer l'extraction de tous les articles correspondant à sa sélection.
MAIS, comme la liste de fournisseurs peut changer à tout moment, le userform qui contient les fournisseurs à extraire DOIT IMPÉRATIVEMENT être généré en fonction de la liste de fournisseurs.
Je dois donc faire en sorte que :
- la macro affiche autant de checkbox que de fournisseurs
- que le nom de la checkbox comporte le numéro de fournisseur
- que chaque checkbox créer apparaisse dans le bon onglet (catégorie) s'il vous plaît.
En ce qui concerne la taille de la userform, elle doit de toute manière occuper tout l'écran donc pas de soucis de place.
Voilà, j'espère que j'ai été assez claire. N'hésitez pas si vous avez besoin d'éclaircissements. Et encore merci d'essayer de m'aider. Il y a encore 1 mois je ne savais même pas pas faire un "Cells(x,y).Select"...
D'après le code que Pijaku m'a mis, voici ce qui me vient à l'esprit :
Private Sub UserForm_Initialize() Dim Ctrl As Control Dim CbName, x, y, z as Byte ' CbName as byte car il sera en fait le numéro de fournisseur y = 0 Set Ctrl = Me.Controls.Add("forms.CheckBox." & CbName) If Range("A1") <> "CbName" Then With Ctrl .Name = Range("A1") .Height = x .Top = y End With . z = z +1 End If End Sub
Après, je peux me débrouiller avec des conditions qui ferons que suivant la valeur de z, x et y varient pour placer la checkbox au bon endroit.
Reste encore à créer les onglets, les nommer, et envoyer chaque checkbox dans le bon onglet
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
16 déc. 2011 à 12:19
16 déc. 2011 à 12:19
Bonjour,
la solution proposée par Lermitte est la mieux adaptée.
Par contre, 100 fournisseurs dans une unique Listbox ne sera pas ergonomique pour l'utilisateur.
Par contre tu parles de catégorie de fournisseurs... Combien de catégories et combien de fournisseurs maxi par catégorie?
Je te propose, non pas de créer un userform multipage, mais, dans ton userform d'intégrer une listbox par catégorie.....
la solution proposée par Lermitte est la mieux adaptée.
Par contre, 100 fournisseurs dans une unique Listbox ne sera pas ergonomique pour l'utilisateur.
Par contre tu parles de catégorie de fournisseurs... Combien de catégories et combien de fournisseurs maxi par catégorie?
Je te propose, non pas de créer un userform multipage, mais, dans ton userform d'intégrer une listbox par catégorie.....
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
Modifié par lermite222 le 16/12/2011 à 12:06
Modifié par lermite222 le 16/12/2011 à 12:06
Re,
Y a beaucoup plus simple que ça.
1°) Un Userform avec un bouton OK
2°) une listBox
La listBox peu facilement être remplie en déterminant la plage des fournisseurs
Avec la propriété MultiSelect = True l'utilisateur peu sélectionner les fournisseurs qui l'intéresse.
Tu peu aussi en faire des option avec la propriété ListStyle
Ensuite tu peu actualiser ta macros avec les items sélectionner.
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
Y a beaucoup plus simple que ça.
1°) Un Userform avec un bouton OK
2°) une listBox
La listBox peu facilement être remplie en déterminant la plage des fournisseurs
Avec la propriété MultiSelect = True l'utilisateur peu sélectionner les fournisseurs qui l'intéresse.
Tu peu aussi en faire des option avec la propriété ListStyle
Ensuite tu peu actualiser ta macros avec les items sélectionner.
A+
Si tu te cognes à un pot et que ça sonne creux, c'est pas forcément le pot qui est vide. ;-)(Confucius)
NOTE : Je ne répond pas aux MP pour les questions techniques.
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
16 déc. 2011 à 12:16
16 déc. 2011 à 12:16
Mais si tu tient absolument à des CheckBox tu peu t'inspirer de cette astuce en remplaçant les boutons par des ckeckBox.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
16 déc. 2011 à 12:28
16 déc. 2011 à 12:28
Bonjour Pijaku,
100 fournisseurs dans une unique Listbox ne sera pas ergonomique pour l'utilisateur.
Je ne trouve pas que c'est trop, regarde un peu la listbox avec les polices des textes.
Par contre, plusieurs listbox vont rendre la sélection beaucoup plus complexe, sans dire que c'est impossible.
A+
100 fournisseurs dans une unique Listbox ne sera pas ergonomique pour l'utilisateur.
Je ne trouve pas que c'est trop, regarde un peu la listbox avec les polices des textes.
Par contre, plusieurs listbox vont rendre la sélection beaucoup plus complexe, sans dire que c'est impossible.
A+
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
33
16 déc. 2011 à 13:08
16 déc. 2011 à 13:08
Comme quoi, les solutions les plus simples répondent souvent aux problèmes les plus complexes...
Je vais essayer une listbox en choix multiple extended, et je vous tiens au courant.
Merci pour vos réponses si rapides.
Je vais essayer une listbox en choix multiple extended, et je vous tiens au courant.
Merci pour vos réponses si rapides.
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
33
Modifié par Phoenellion le 16/12/2011 à 13:18
Modifié par Phoenellion le 16/12/2011 à 13:18
Hem... lermite222, tu peux me mettre un exemple de code d'une listbox remplie avec un plage de cellule stp ? je ne connais pas la syntaxe et je ne trouve pas dans l'aide vba...
je dois te paraître un vrai débutant, je te rassure c'est le cas, il y a un mois je ne savais même pas faire un Cells( x,y).Select... c'est tout dire !!
je dois te paraître un vrai débutant, je te rassure c'est le cas, il y a un mois je ne savais même pas faire un Cells( x,y).Select... c'est tout dire !!
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
16 déc. 2011 à 13:34
16 déc. 2011 à 13:34
Je vous laisse lire ce tutos sur toutes sortes de contrôles et en particulier la listbox
Bonne continuation
Bonne continuation
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
16 déc. 2011 à 13:47
16 déc. 2011 à 13:47
Ont ne fait pratiquement jamais de Cells( x,y).Select ont l'emploi directement.
par exemple : Cells( x,y).Offset(0,6).Value = Cells( x,y).Value
par exemple : Cells( x,y).Offset(0,6).Value = Cells( x,y).Value
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
33
16 déc. 2011 à 14:07
16 déc. 2011 à 14:07
Merci !
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
16 déc. 2011 à 13:44
16 déc. 2011 à 13:44
Commençons par le début..
Mais la plage doit être dynamique ?
Si oui, donne le nom du classeur et la colonne où se trouve les fournisseurs je t'aiderais à définir la plage dynamiquement.
Pense aussi à l'aide en ligne.
Si tu est dans le VBA double clic sur le mot par exemple MultiSelect, il se met en surimpression, taper F1.
Dans les propriétés d'un contrôle, idem, clic sur la propriété (dans la fenêtre propriété) et tape F1.
PS : Quand une solution a été donnée à une question pense à taguer le topic en résolut, (Cliquer sur marquer comme résolu en haut à gauche)
ListBox1.MultiSelect = fmMultiSelectMulti ListBox1.RowSource ="'NomDuClasseur+Extention'!A1:A100"
Mais la plage doit être dynamique ?
Si oui, donne le nom du classeur et la colonne où se trouve les fournisseurs je t'aiderais à définir la plage dynamiquement.
Pense aussi à l'aide en ligne.
Si tu est dans le VBA double clic sur le mot par exemple MultiSelect, il se met en surimpression, taper F1.
Dans les propriétés d'un contrôle, idem, clic sur la propriété (dans la fenêtre propriété) et tape F1.
PS : Quand une solution a été donnée à une question pense à taguer le topic en résolut, (Cliquer sur marquer comme résolu en haut à gauche)
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
33
19 déc. 2011 à 02:11
19 déc. 2011 à 02:11
Hello,
merci pour ton aide, j'ai cherché un peu de mon côté, pour changer, et voici comment j'arrive à mes fins :
Je me doute que j'ai fait des pirouettes inutiles mais bon... je suis arrivé à mes fins, c'est pas si mal
Par contre, j'ai cherché creusé dans mes différentes tables de fournisseurs, et la plus grande monte à 259 lignes...
CkeckBox ou ListBox, je pense que c'est la quantité d'informations qui pose problème. De deux maux le moindre, je vais donc rester sur ta sage propositiion, la List Box
Par conte, cela pose un problème autre : je ne sais pas quelles informations renvoi une ListBox...
je vais gratter un peu et si je bute je reviens te voir.
@+
merci pour ton aide, j'ai cherché un peu de mon côté, pour changer, et voici comment j'arrive à mes fins :
Private Sub UserForm_Initialize() Dim a, b As Long a = Cells(2, 1).Row b = Cells(2, 1).End(xlDown).Row Names.Add Name:="Plage_Fourn", RefersTo:="=fourniss!R" & a & "C1:R" & b & "C1" With ListBox1 .AddItem .MultiSelect = fmMultiSelectExtended .RowSource = "fourniss!Plage_Fourn" End With End Sub
Je me doute que j'ai fait des pirouettes inutiles mais bon... je suis arrivé à mes fins, c'est pas si mal
Par contre, j'ai cherché creusé dans mes différentes tables de fournisseurs, et la plus grande monte à 259 lignes...
CkeckBox ou ListBox, je pense que c'est la quantité d'informations qui pose problème. De deux maux le moindre, je vais donc rester sur ta sage propositiion, la List Box
Par conte, cela pose un problème autre : je ne sais pas quelles informations renvoi une ListBox...
je vais gratter un peu et si je bute je reviens te voir.
@+
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
33
Modifié par Phoenellion le 20/12/2011 à 23:37
Modifié par Phoenellion le 20/12/2011 à 23:37
Bon, je pense que ce topic peut être fermé, j'ai trouvé un moyen d'utiliser des CheckBox à nom variable en travaillant sur un autre programme (plus simple) où j'en avais aussi besoin.
Comme on n'a pas donné d'exemple précis, je mets un petit bout de code simple pour ceux qui passeraient après nous, avec le raisonnement qui m'a permi de comprendre.
C'est un peu fastidieux mais ça marche et j'ai une préférences pour les variables numériques, notamment car je travaille essentiellement avec des boucles :
On peut aussi avoir une CheckBox dont le nom entier est une variable :
Me.Controls(ma_variable).Caption
Le tout est de comprendre qu'on interroge/nomme une CheckBox ou tout autre Control directement dans la partie objet.
Il faut bien différencier le nom du Control, qui n'apparait que pour le développeur dans les propriétés, et l'intitulé (Caption) qui lui est visible pour l'utilisateur de la userform.
Les deux peuvent être totalement différents, et heureusement.
Ensuite, pour tester la valeur d'une CheckBox, comme elle renvoie une valeur booléenne, pas le choix, il faut tester sa valeur.
Lermite222, je ne sais pass si c'est ce qu'expliquait ton tuto, mais comme je ne télécharge jamais quoi que ce soit sur les forum, je n'ai pas tout vu.
Comme on n'a pas donné d'exemple précis, je mets un petit bout de code simple pour ceux qui passeraient après nous, avec le raisonnement qui m'a permi de comprendre.
C'est un peu fastidieux mais ça marche et j'ai une préférences pour les variables numériques, notamment car je travaille essentiellement avec des boucles :
Private Sub UserForm_Initialize() Dim i As Byte Dim Mois As String For i = 34 To 45 If i = 34 Then Mois = "Janvier" If i = 35 Then Mois = "Février" If i = 36 Then Mois = "Mars" If i = 37 Then Mois = "Avril" If i = 38 Then Mois = "Mai" If i = 39 Then Mois = "Juin" If i = 40 Then Mois = "Juillet" If i = 41 Then Mois = "Août" If i = 42 Then Mois = "Septembre" If i = 43 Then Mois = "Octobre" If i = 44 Then Mois = "Novembre" If i = 45 Then Mois = "Décembre" If Month(Now) - (i - 33) > 0 Then Me.Controls("Checkbox" & i).Caption = Mois & " " & Year(Now) If Month(Now) - (i - 33) <= 0 Then Me.Controls("Checkbox" & i).Caption = Mois & " " & Year(Now) - 1 Next i End Sub
On peut aussi avoir une CheckBox dont le nom entier est une variable :
Me.Controls(ma_variable).Caption
Le tout est de comprendre qu'on interroge/nomme une CheckBox ou tout autre Control directement dans la partie objet.
Il faut bien différencier le nom du Control, qui n'apparait que pour le développeur dans les propriétés, et l'intitulé (Caption) qui lui est visible pour l'utilisateur de la userform.
Les deux peuvent être totalement différents, et heureusement.
Ensuite, pour tester la valeur d'une CheckBox, comme elle renvoie une valeur booléenne, pas le choix, il faut tester sa valeur.
[...]
For x = 1 To 10
[...]
If Me.Controls("CheckBox" & x).Value = True Then
[...]
Next x
Lermite222, je ne sais pass si c'est ce qu'expliquait ton tuto, mais comme je ne télécharge jamais quoi que ce soit sur les forum, je n'ai pas tout vu.
lermite222
Messages postés
8724
Date d'inscription
dimanche 8 avril 2007
Statut
Contributeur
Dernière intervention
22 janvier 2020
1 191
20 déc. 2011 à 23:55
20 déc. 2011 à 23:55
Tu fais une grossière erreur en disant "A nom variable" c'est d'ailleurs pour cela que l'ont ne t'a pas compris.
En fait ce n'est pas le NOM que tu veux changer mais sont CAPTION (ce qui est vu par l'utilisateur).
Et j'espère que l'ont ne suivra pas l'exemple de code que tu met, il est... heuuu.
Enfin, puisque ça te convient.
Et a titre d'info, il n'y a rien à télécharger sur le forum, mes astuces sont mise sur une page perso dont je communique la clé.
A+
En fait ce n'est pas le NOM que tu veux changer mais sont CAPTION (ce qui est vu par l'utilisateur).
Et j'espère que l'ont ne suivra pas l'exemple de code que tu met, il est... heuuu.
Enfin, puisque ça te convient.
Et a titre d'info, il n'y a rien à télécharger sur le forum, mes astuces sont mise sur une page perso dont je communique la clé.
A+
Phoenellion
Messages postés
116
Date d'inscription
dimanche 14 septembre 2008
Statut
Membre
Dernière intervention
30 août 2012
33
Modifié par Phoenellion le 21/12/2011 à 00:49
Modifié par Phoenellion le 21/12/2011 à 00:49
par la commande
Me.Controls("CheckBox" & x).***
je fais bien appel à une checkbox dont le nom varie non ?
pour mon code, je me doute que c'est spécial rassure toi
Me.Controls("CheckBox" & x).***
je fais bien appel à une checkbox dont le nom varie non ?
pour mon code, je me doute que c'est spécial rassure toi