Bonjour à tous,
Je n'arrive pas à faire une boucle FOR sur des combobox nommées :
bxMq1,bxMq2,bxMq3,bxMq4.
Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes
déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement :
Set bxMq = bxMq1
Set bxModele = bxModele1
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 2
Set bxMq = bxMq2
Set bxModele = bxModele2
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 3
=> MEME CHOSE
'point 4
=>MEME CHOSE
End If
End Sub
Cela fait beaucoup de lignes de code pour pas grand chose,
J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer
Dim bxMq As ComboBox
For cpt = 1 To 4
chaine = "bxMq" & cpt
Set bxMq = chaine
Set bxModele = "bxModele" & cpt
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox
s'affiche!
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Daniel
Bonjour. Exemple pour un userform, à adapter pour une feuile :
Dim ctrl As Control For Each ctrl In Userform1.Controls If Left(ctrl.Name, 4) = "bxMq" Then ctrl.AddItem "EUPEC" ctrl.AddItem "SEMIKRON" ctrl.AddItem "FUJI" ctrl.AddItem "IXYS" End If Next ctrl
Cordialement. Daniel "fdess" a écrit dans le message de news: OKjxCBR$
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!
Quelqu'un a-t-il une idée?
FDESS
Bonjour.
Exemple pour un userform, à adapter pour une feuile :
Dim ctrl As Control
For Each ctrl In Userform1.Controls
If Left(ctrl.Name, 4) = "bxMq" Then
ctrl.AddItem "EUPEC"
ctrl.AddItem "SEMIKRON"
ctrl.AddItem "FUJI"
ctrl.AddItem "IXYS"
End If
Next ctrl
Cordialement.
Daniel
"fdess" <fdessalces@cegetel.net> a écrit dans le message de news:
OKjxCBR$GHA.4740@TK2MSFTNGP03.phx.gbl...
Bonjour à tous,
Je n'arrive pas à faire une boucle FOR sur des combobox nommées :
bxMq1,bxMq2,bxMq3,bxMq4.
Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes
déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement :
Set bxMq = bxMq1
Set bxModele = bxModele1
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 2
Set bxMq = bxMq2
Set bxModele = bxModele2
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 3
=> MEME CHOSE
'point 4
=>MEME CHOSE
End If
End Sub
Cela fait beaucoup de lignes de code pour pas grand chose,
J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer
Dim bxMq As ComboBox
For cpt = 1 To 4
chaine = "bxMq" & cpt
Set bxMq = chaine
Set bxModele = "bxModele" & cpt
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox
s'affiche!
Bonjour. Exemple pour un userform, à adapter pour une feuile :
Dim ctrl As Control For Each ctrl In Userform1.Controls If Left(ctrl.Name, 4) = "bxMq" Then ctrl.AddItem "EUPEC" ctrl.AddItem "SEMIKRON" ctrl.AddItem "FUJI" ctrl.AddItem "IXYS" End If Next ctrl
Cordialement. Daniel "fdess" a écrit dans le message de news: OKjxCBR$
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!
Quelqu'un a-t-il une idée?
FDESS
JB
Bonsoir,
For i=1 to 4 Me("bxMq" &i).AddItem "EUPEC" Me("bxMq" &i).AddItem "SEMIKRON" Next i
ou
For i=1 to 4 Me.Controls("bxMq" &i).AddItem "EUPEC" Me.Controls("bxMq" &i).AddItem "SEMIKRON" Next i
Cordialement JB
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!
Quelqu'un a-t-il une idée?
FDESS
Bonsoir,
For i=1 to 4
Me("bxMq" &i).AddItem "EUPEC"
Me("bxMq" &i).AddItem "SEMIKRON"
Next i
ou
For i=1 to 4
Me.Controls("bxMq" &i).AddItem "EUPEC"
Me.Controls("bxMq" &i).AddItem "SEMIKRON"
Next i
Cordialement JB
Bonjour à tous,
Je n'arrive pas à faire une boucle FOR sur des combobox nommées :
bxMq1,bxMq2,bxMq3,bxMq4.
Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes
déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement :
Set bxMq = bxMq1
Set bxModele = bxModele1
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 2
Set bxMq = bxMq2
Set bxModele = bxModele2
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 3
=> MEME CHOSE
'point 4
=>MEME CHOSE
End If
End Sub
Cela fait beaucoup de lignes de code pour pas grand chose,
J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer
Dim bxMq As ComboBox
For cpt = 1 To 4
chaine = "bxMq" & cpt
Set bxMq = chaine
Set bxModele = "bxModele" & cpt
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox
s'affiche!
For i=1 to 4 Me("bxMq" &i).AddItem "EUPEC" Me("bxMq" &i).AddItem "SEMIKRON" Next i
ou
For i=1 to 4 Me.Controls("bxMq" &i).AddItem "EUPEC" Me.Controls("bxMq" &i).AddItem "SEMIKRON" Next i
Cordialement JB
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!
Quelqu'un a-t-il une idée?
FDESS
fdess
Merci JB pour ton astuce mais ça ne marche pas, Le problème vient que sans le mot clef "Controls" VBA me demande de spécifier
Cet objet ne gère pas cette propriété ou méthode (erreur 438)
et avec le mot clef "Controls" VBA me dit Méthode ou membre de données introuvable (erreur 461) Pourtant mes combobox apparaissent bien sous les noms bxMq1,etc dans le debogueur, il m'est impossible d'y accedermêmes en passant par une variable declaré en variant. Encore merci d'y avoir reflechi
"JB" a écrit dans le message de news:
Bonsoir,
For i=1 to 4 Me("bxMq" &i).AddItem "EUPEC" Me("bxMq" &i).AddItem "SEMIKRON" Next i
ou
For i=1 to 4 Me.Controls("bxMq" &i).AddItem "EUPEC" Me.Controls("bxMq" &i).AddItem "SEMIKRON" Next i
Cordialement JB
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!
Quelqu'un a-t-il une idée?
FDESS
Merci JB pour ton astuce mais ça ne marche pas,
Le problème vient que sans le mot clef "Controls" VBA me demande de
spécifier
Cet objet ne gère pas cette propriété ou méthode (erreur 438)
et avec le mot clef "Controls" VBA me dit
Méthode ou membre de données introuvable (erreur 461)
Pourtant mes combobox apparaissent bien sous les noms bxMq1,etc dans le
debogueur, il m'est impossible d'y accedermêmes en passant par une variable
declaré en variant.
Encore merci d'y avoir reflechi
"JB" <boisgontier@hotmail.com> a écrit dans le message de news:
1162321795.764737.46420@f16g2000cwb.googlegroups.com...
Bonsoir,
For i=1 to 4
Me("bxMq" &i).AddItem "EUPEC"
Me("bxMq" &i).AddItem "SEMIKRON"
Next i
ou
For i=1 to 4
Me.Controls("bxMq" &i).AddItem "EUPEC"
Me.Controls("bxMq" &i).AddItem "SEMIKRON"
Next i
Cordialement JB
Bonjour à tous,
Je n'arrive pas à faire une boucle FOR sur des combobox nommées :
bxMq1,bxMq2,bxMq3,bxMq4.
Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes
déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement :
Set bxMq = bxMq1
Set bxModele = bxModele1
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 2
Set bxMq = bxMq2
Set bxModele = bxModele2
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 3
=> MEME CHOSE
'point 4
=>MEME CHOSE
End If
End Sub
Cela fait beaucoup de lignes de code pour pas grand chose,
J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer
Dim bxMq As ComboBox
For cpt = 1 To 4
chaine = "bxMq" & cpt
Set bxMq = chaine
Set bxModele = "bxModele" & cpt
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox
s'affiche!
Merci JB pour ton astuce mais ça ne marche pas, Le problème vient que sans le mot clef "Controls" VBA me demande de spécifier
Cet objet ne gère pas cette propriété ou méthode (erreur 438)
et avec le mot clef "Controls" VBA me dit Méthode ou membre de données introuvable (erreur 461) Pourtant mes combobox apparaissent bien sous les noms bxMq1,etc dans le debogueur, il m'est impossible d'y accedermêmes en passant par une variable declaré en variant. Encore merci d'y avoir reflechi
"JB" a écrit dans le message de news:
Bonsoir,
For i=1 to 4 Me("bxMq" &i).AddItem "EUPEC" Me("bxMq" &i).AddItem "SEMIKRON" Next i
ou
For i=1 to 4 Me.Controls("bxMq" &i).AddItem "EUPEC" Me.Controls("bxMq" &i).AddItem "SEMIKRON" Next i
Cordialement JB
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!
Quelqu'un a-t-il une idée?
FDESS
JB
Voir PJ:
http://cjoint.com/?lcvpEuEIiX
JB
Merci JB pour ton astuce mais ça ne marche pas, Le problème vient que sans le mot clef "Controls" VBA me demande de spécifier
Cet objet ne gère pas cette propriété ou méthode (erreur 438)
et avec le mot clef "Controls" VBA me dit Méthode ou membre de données introuvable (erreur 461) Pourtant mes combobox apparaissent bien sous les noms bxMq1,etc dans le debogueur, il m'est impossible d'y accedermêmes en passant par une vari able declaré en variant. Encore merci d'y avoir reflechi
"JB" a écrit dans le message de news:
Bonsoir,
For i=1 to 4 Me("bxMq" &i).AddItem "EUPEC" Me("bxMq" &i).AddItem "SEMIKRON" Next i
ou
For i=1 to 4 Me.Controls("bxMq" &i).AddItem "EUPEC" Me.Controls("bxMq" &i).AddItem "SEMIKRON" Next i
Cordialement JB
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!
Quelqu'un a-t-il une idée?
FDESS
Voir PJ:
http://cjoint.com/?lcvpEuEIiX
JB
Merci JB pour ton astuce mais ça ne marche pas,
Le problème vient que sans le mot clef "Controls" VBA me demande de
spécifier
Cet objet ne gère pas cette propriété ou méthode (erreur 438)
et avec le mot clef "Controls" VBA me dit
Méthode ou membre de données introuvable (erreur 461)
Pourtant mes combobox apparaissent bien sous les noms bxMq1,etc dans le
debogueur, il m'est impossible d'y accedermêmes en passant par une vari able
declaré en variant.
Encore merci d'y avoir reflechi
"JB" <boisgontier@hotmail.com> a écrit dans le message de news:
1162321795.764737.46420@f16g2000cwb.googlegroups.com...
Bonsoir,
For i=1 to 4
Me("bxMq" &i).AddItem "EUPEC"
Me("bxMq" &i).AddItem "SEMIKRON"
Next i
ou
For i=1 to 4
Me.Controls("bxMq" &i).AddItem "EUPEC"
Me.Controls("bxMq" &i).AddItem "SEMIKRON"
Next i
Cordialement JB
Bonjour à tous,
Je n'arrive pas à faire une boucle FOR sur des combobox nommées :
bxMq1,bxMq2,bxMq3,bxMq4.
Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes
déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement :
Set bxMq = bxMq1
Set bxModele = bxModele1
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 2
Set bxMq = bxMq2
Set bxModele = bxModele2
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
'
'point 3
=> MEME CHOSE
'point 4
=>MEME CHOSE
End If
End Sub
Cela fait beaucoup de lignes de code pour pas grand chose,
J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer
Dim bxMq As ComboBox
For cpt = 1 To 4
chaine = "bxMq" & cpt
Set bxMq = chaine
Set bxModele = "bxModele" & cpt
bxMq.AddItem "EUPEC"
bxMq.AddItem "SEMIKRON"
bxMq.AddItem "FUJI"
bxMq.AddItem "IXYS"
bxModele.Clear
bxModele.AddItem ("Modèle")
Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox
s'affiche!
Merci JB pour ton astuce mais ça ne marche pas, Le problème vient que sans le mot clef "Controls" VBA me demande de spécifier
Cet objet ne gère pas cette propriété ou méthode (erreur 438)
et avec le mot clef "Controls" VBA me dit Méthode ou membre de données introuvable (erreur 461) Pourtant mes combobox apparaissent bien sous les noms bxMq1,etc dans le debogueur, il m'est impossible d'y accedermêmes en passant par une vari able declaré en variant. Encore merci d'y avoir reflechi
"JB" a écrit dans le message de news:
Bonsoir,
For i=1 to 4 Me("bxMq" &i).AddItem "EUPEC" Me("bxMq" &i).AddItem "SEMIKRON" Next i
ou
For i=1 to 4 Me.Controls("bxMq" &i).AddItem "EUPEC" Me.Controls("bxMq" &i).AddItem "SEMIKRON" Next i
Cordialement JB
Bonjour à tous, Je n'arrive pas à faire une boucle FOR sur des combobox nommées : bxMq1,bxMq2,bxMq3,bxMq4. Je dois à l'ouverture de mon programme rentrer 4 mots dans les listes déroulantes me permettant ensuite de trier des données.
Voici ce que je fais actuellement : Set bxMq = bxMq1 Set bxModele = bxModele1 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 2 Set bxMq = bxMq2 Set bxModele = bxModele2 bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") ' 'point 3 => MEME CHOSE 'point 4 =>MEME CHOSE End If End Sub Cela fait beaucoup de lignes de code pour pas grand chose, J'ai donc essayé de condenser de la façon suivante :
Dim cpt As Integer Dim bxMq As ComboBox For cpt = 1 To 4 chaine = "bxMq" & cpt Set bxMq = chaine Set bxModele = "bxModele" & cpt bxMq.AddItem "EUPEC" bxMq.AddItem "SEMIKRON" bxMq.AddItem "FUJI" bxMq.AddItem "IXYS" bxModele.Clear bxModele.AddItem ("Modèle") Next cpt
Mais le message d'erreur me disant que "chaine" n'est pas une combobox s'affiche!