Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un user fom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox 1 les 4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goû t, mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs du rant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programm e à qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un user fom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox 1 les 4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goû t, mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs du rant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programm e à qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un user fom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox 1 les 4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goû t, mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs du rant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programm e à qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un userfom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox1 les
4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goût,
mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs
durant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programme à
qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un userfom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox1 les
4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goût,
mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs
durant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programme à
qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un userfom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox1 les
4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goût,
mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs
durant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programme à
qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Bonjour Jean-Marc,
Merci pour la réponse.
Mais comment faire, sinon dupliquer les combobox.
J'aurais aimé un exemple pour les 2 cas, quelles propriétés sont à changer
pour voir les combobox s'exécuter seules.
Merci pour votre réponse.
Greffier.
a écrit dans le message de news:
On 14 jan, 22:49, "Greffier" wrote:Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un userfom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par
des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox1
les 4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre
à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goût,
mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs
durant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programme à
qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Hello,
on peut faire 2 réponses.
La réponse technique, c'est qu'il est possible d'appeler directement
une procédure évènementielle.
Tu peux faire depuis ton combo1 :
Private Sub Combo1_Change()
Call combo2_change
End Sub
Ca, c'est pour la technique.
Maintenant la réponse "non technique" : ce n'est pas une bonne idée de
faire comme ça. Tu introduis un couplage entre le code fonctionnel et
l'interface graphique, ce qui est dans tous les cas une très mauvaise
pratique.
Le plus sain, c'est d'écrire ton code dans des fonctions bien
autonomes, recevant ce qu'il faut comme paramètres et d'appeler ces
fonctions depuis le ou les endroits appropriés.
Ainsi, tu ne lies pas ton coded à ton interface graphique : si demain
tu changes l'interface graphique, si tu remplaces les combo par autre
chose, etc., ton code ne nécessite que peu de chnagements, car toute
la partie fonctionnelle est présente dans des fonctions.
Cordialement;
--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
Bonjour Jean-Marc,
Merci pour la réponse.
Mais comment faire, sinon dupliquer les combobox.
J'aurais aimé un exemple pour les 2 cas, quelles propriétés sont à changer
pour voir les combobox s'exécuter seules.
Merci pour votre réponse.
Greffier.
<jeanmarcnoury@gmail.com> a écrit dans le message de news:
2ebcda65-b8b8-4218-b049-93d3411ad725@k36g2000pri.googlegroups.com...
On 14 jan, 22:49, "Greffier" <s...@spam.fr> wrote:
Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un userfom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par
des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox1
les 4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre
à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goût,
mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs
durant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programme à
qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Hello,
on peut faire 2 réponses.
La réponse technique, c'est qu'il est possible d'appeler directement
une procédure évènementielle.
Tu peux faire depuis ton combo1 :
Private Sub Combo1_Change()
Call combo2_change
End Sub
Ca, c'est pour la technique.
Maintenant la réponse "non technique" : ce n'est pas une bonne idée de
faire comme ça. Tu introduis un couplage entre le code fonctionnel et
l'interface graphique, ce qui est dans tous les cas une très mauvaise
pratique.
Le plus sain, c'est d'écrire ton code dans des fonctions bien
autonomes, recevant ce qu'il faut comme paramètres et d'appeler ces
fonctions depuis le ou les endroits appropriés.
Ainsi, tu ne lies pas ton coded à ton interface graphique : si demain
tu changes l'interface graphique, si tu remplaces les combo par autre
chose, etc., ton code ne nécessite que peu de chnagements, car toute
la partie fonctionnelle est présente dans des fonctions.
Cordialement;
--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ; _no_spam_jean_marc_n2@yahoo.fr
Bonjour Jean-Marc,
Merci pour la réponse.
Mais comment faire, sinon dupliquer les combobox.
J'aurais aimé un exemple pour les 2 cas, quelles propriétés sont à changer
pour voir les combobox s'exécuter seules.
Merci pour votre réponse.
Greffier.
a écrit dans le message de news:
On 14 jan, 22:49, "Greffier" wrote:Bonjour,
J'expose mon idée.
J'ai 5 ComboBox (liste déroulante avec différents choix) dans un userfom
ComboBox1
ComboBox2
ComboBox3
ComboBox4
ComboBox5
En fonction de la sélection du ComboBox1, les choix possibles dans les 4
autres sont déterminés.
Les listes de choix de chaque ComboBox sont définies à l'intérieur par
des
additem.
L'affichage des ComboBox se met à jour en fonction du choix manuel en
cliquant sur la valeur désirée.
MAIS, il est intéressant de savoir qu'à un certain choix sur ComboBox1
les 4
autres sont les mêmes.
COMMENT, une fois CE choix effectué je peux faire exécuter les ordres
contenus dans les quatre autres ComboBox, sans aller cliquer pour mettre
à
jour les 4 ComboBox pour les faire exécuter.
Il serait intéressant d'avoir ce schéma :
Exécuter ComboBox1
'''Garnir ComboBox2
Faire exécuter ComboBox2_change
'''Garnir ComboBox3
Faire exécuter ComboBox3_change
'''Garnir ComboBox4
Faire exécuter ComboBox4_change
'''Garnir ComboBox5
Faire exécuter ComboBox5_change
J'aimerais utiliser cette solution, qui est la plus logique à mon goût,
mais
comment faire pour que les ComboBox2 3 4 5
s'exécutent alors comme des sous-programmes et gardent leurs valeurs
durant
la durée pour la valeur de la ComboBox1.
Pourrait-on à la rigueur exécuter une ComboBox comme un sous-programme à
qui
on transmettrait une valeur.
D'avance merci pour votre aide.
Greffier.
Hello,
on peut faire 2 réponses.
La réponse technique, c'est qu'il est possible d'appeler directement
une procédure évènementielle.
Tu peux faire depuis ton combo1 :
Private Sub Combo1_Change()
Call combo2_change
End Sub
Ca, c'est pour la technique.
Maintenant la réponse "non technique" : ce n'est pas une bonne idée de
faire comme ça. Tu introduis un couplage entre le code fonctionnel et
l'interface graphique, ce qui est dans tous les cas une très mauvaise
pratique.
Le plus sain, c'est d'écrire ton code dans des fonctions bien
autonomes, recevant ce qu'il faut comme paramètres et d'appeler ces
fonctions depuis le ou les endroits appropriés.
Ainsi, tu ne lies pas ton coded à ton interface graphique : si demain
tu changes l'interface graphique, si tu remplaces les combo par autre
chose, etc., ton code ne nécessite que peu de chnagements, car toute
la partie fonctionnelle est présente dans des fonctions.
Cordialement;
--
Jean-marc Noury (jean_marc_n2)
Microsoft MVP - Visual Basic
FAQ VB: http://faq.vb.free.fr/
mailto: remove '_no_spam_' ;
sub combo1_click()
combo2.clear
select case combo1.listindex
case 0
combo2.listindex = "un"
combo2.listindex = "deux"
case 1
combo2.listindex = "un"
combo2.listindex = "trois"
end select
combo2.listindex=0
combo2.setfocus
end sub
sub combo1_click()
combo2.clear
select case combo1.listindex
case 0
combo2.listindex = "un"
combo2.listindex = "deux"
case 1
combo2.listindex = "un"
combo2.listindex = "trois"
end select
combo2.listindex=0
combo2.setfocus
end sub
sub combo1_click()
combo2.clear
select case combo1.listindex
case 0
combo2.listindex = "un"
combo2.listindex = "deux"
case 1
combo2.listindex = "un"
combo2.listindex = "trois"
end select
combo2.listindex=0
combo2.setfocus
end sub
Mais tel quel, le code est fonctionnel et tout à fait utilisable.
Le "secret" (de polichinelle ici) consiste simplement à utiliser des
contrôles indexés
et des tableaux. Du coup, tout devient facile.
Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
sans même
devoir modifier l'existant.
Mais tel quel, le code est fonctionnel et tout à fait utilisable.
Le "secret" (de polichinelle ici) consiste simplement à utiliser des
contrôles indexés
et des tableaux. Du coup, tout devient facile.
Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
sans même
devoir modifier l'existant.
Mais tel quel, le code est fonctionnel et tout à fait utilisable.
Le "secret" (de polichinelle ici) consiste simplement à utiliser des
contrôles indexés
et des tableaux. Du coup, tout devient facile.
Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
sans même
devoir modifier l'existant.
On 15 jan, 15:38, wrote:
> Mais tel quel, le code est fonctionnel et tout à fait utilisable.
> Le "secret" (de polichinelle ici) consiste simplement à utiliser des
> contrôles indexés
> et des tableaux. Du coup, tout devient facile.
> Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
> sans même
> devoir modifier l'existant.
Le seul problème c'est que les contrôles ne sont pas indexés sur le s
userforms (Greffier parle de userform, donc vba, pas vb).
Ca sera donc quand même un peu hard code pour lui.
On 15 jan, 15:38, jeanmarcno...@gmail.com wrote:
> Mais tel quel, le code est fonctionnel et tout à fait utilisable.
> Le "secret" (de polichinelle ici) consiste simplement à utiliser des
> contrôles indexés
> et des tableaux. Du coup, tout devient facile.
> Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
> sans même
> devoir modifier l'existant.
Le seul problème c'est que les contrôles ne sont pas indexés sur le s
userforms (Greffier parle de userform, donc vba, pas vb).
Ca sera donc quand même un peu hard code pour lui.
On 15 jan, 15:38, wrote:
> Mais tel quel, le code est fonctionnel et tout à fait utilisable.
> Le "secret" (de polichinelle ici) consiste simplement à utiliser des
> contrôles indexés
> et des tableaux. Du coup, tout devient facile.
> Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
> sans même
> devoir modifier l'existant.
Le seul problème c'est que les contrôles ne sont pas indexés sur le s
userforms (Greffier parle de userform, donc vba, pas vb).
Ca sera donc quand même un peu hard code pour lui.
On 15 jan, 15:38, wrote:
> Mais tel quel, le code est fonctionnel et tout à fait utilisable.
> Le "secret" (de polichinelle ici) consiste simplement à utiliser des
> contrôles indexés
> et des tableaux. Du coup, tout devient facile.
> Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
> sans même
> devoir modifier l'existant.
Le seul problème c'est que les contrôles ne sont pas indexés sur les
userforms (Greffier parle de userform, donc vba, pas vb).
Ca sera donc quand même un peu hard code pour lui.
On 15 jan, 15:38, jeanmarcno...@gmail.com wrote:
> Mais tel quel, le code est fonctionnel et tout à fait utilisable.
> Le "secret" (de polichinelle ici) consiste simplement à utiliser des
> contrôles indexés
> et des tableaux. Du coup, tout devient facile.
> Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
> sans même
> devoir modifier l'existant.
Le seul problème c'est que les contrôles ne sont pas indexés sur les
userforms (Greffier parle de userform, donc vba, pas vb).
Ca sera donc quand même un peu hard code pour lui.
On 15 jan, 15:38, wrote:
> Mais tel quel, le code est fonctionnel et tout à fait utilisable.
> Le "secret" (de polichinelle ici) consiste simplement à utiliser des
> contrôles indexés
> et des tableaux. Du coup, tout devient facile.
> Ajouter une combo et des règles se fait SANS DEVOIR ECRIRE DE CODE,
> sans même
> devoir modifier l'existant.
Le seul problème c'est que les contrôles ne sont pas indexés sur les
userforms (Greffier parle de userform, donc vba, pas vb).
Ca sera donc quand même un peu hard code pour lui.