[excel2007] Combobox dans userform
Résolu/Fermé
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
-
3 déc. 2011 à 19:00
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 4 déc. 2011 à 22:06
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 4 déc. 2011 à 22:06
A voir également:
- [excel2007] Combobox dans userform
- Remplir combobox vba ✓ - Forum Excel
- Vba combobox listindex ✓ - Forum VB / VBA
- Userform excel mac - Forum VB / VBA
- Combobox additem ✓ - Forum VB / VBA
- Javascript combobox - Forum Javascript
5 réponses
m@rina
Messages postés
21101
Date d'inscription
mardi 12 juin 2007
Statut
Contributeur
Dernière intervention
28 novembre 2024
11 363
3 déc. 2011 à 19:27
3 déc. 2011 à 19:27
Bonjour,
Je ne sais pas si on peut te répondre quel code est le plus simple ?
Il faudrait déjà savoir parmi lesquels...
Par ailleurs, on ne complexifie par un code pour le plaisir... Si un code paraît plus complexe qu'un autre, c'est surtout qu'il est différent, et que le but cherché n'est pas le même.
Donc, avant tout il faudrait savoir comment est composée ta séries de listes déroulantes.
- Quelle est la source pour chacune ?
- Y a t il une obligation à faire son choix dans un ordre imposé ?
- Une liste 2 découlant du choix dans la liste 1 , qu'en est-il de l'inverse ?
etc.
Voici donc les premières questions qu'il faut se poser avant de se lancer dans un code, et de faire des copier coller sans comprendre les tenants et les aboutissants...
m@rina
Je ne sais pas si on peut te répondre quel code est le plus simple ?
Il faudrait déjà savoir parmi lesquels...
Par ailleurs, on ne complexifie par un code pour le plaisir... Si un code paraît plus complexe qu'un autre, c'est surtout qu'il est différent, et que le but cherché n'est pas le même.
Donc, avant tout il faudrait savoir comment est composée ta séries de listes déroulantes.
- Quelle est la source pour chacune ?
- Y a t il une obligation à faire son choix dans un ordre imposé ?
- Une liste 2 découlant du choix dans la liste 1 , qu'en est-il de l'inverse ?
etc.
Voici donc les premières questions qu'il faut se poser avant de se lancer dans un code, et de faire des copier coller sans comprendre les tenants et les aboutissants...
m@rina
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
3 déc. 2011 à 19:21
3 déc. 2011 à 19:21
bonjour,
Si tu pouvais nous mettre un exemple de classeur, sans données identifiables et privées, mais avec la structure de tes données et ton code actuel, sur https://www.cjoint.com/ puis nous mettre le lien généré ici ce serait plus facile.
Si tu pouvais nous mettre un exemple de classeur, sans données identifiables et privées, mais avec la structure de tes données et ton code actuel, sur https://www.cjoint.com/ puis nous mettre le lien généré ici ce serait plus facile.
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
3 déc. 2011 à 20:05
3 déc. 2011 à 20:05
Merci de vos réponses
Voici le fichier avec le userform
https://www.cjoint.com/?ALdt2ulgWFf
Ce que je cherche à faire
combobox1 => Famille (quincaillerie,police...)
combobox2 => référence en fonction de la famille
combobox3 => Tarif (3 choix de prix sauf pour quincaillerie qui n'en as qu'un) en fonction de la référence
- Pour ce faire j'ai créé quatre feuilles ayant le même nom que les familles
-J avais chercher aussi à tout réunir sur une feuille (base) mais si on peut faire avec les 4 feuilles je préfère.
-La feuille données recense juste les familles
Suis je bien parti du début ? (certes court le début)
Voici le fichier avec le userform
https://www.cjoint.com/?ALdt2ulgWFf
Ce que je cherche à faire
combobox1 => Famille (quincaillerie,police...)
combobox2 => référence en fonction de la famille
combobox3 => Tarif (3 choix de prix sauf pour quincaillerie qui n'en as qu'un) en fonction de la référence
- Pour ce faire j'ai créé quatre feuilles ayant le même nom que les familles
-J avais chercher aussi à tout réunir sur une feuille (base) mais si on peut faire avec les 4 feuilles je préfère.
-La feuille données recense juste les familles
Suis je bien parti du début ? (certes court le début)
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
3 déc. 2011 à 23:45
3 déc. 2011 à 23:45
bonjour
Quelques modifications effectuées sur ton code
- Ton initialisation ne fonctionne pas car tu as écrit
Private Sub UserForm1_Initialize() alors que c'est
Private Sub UserForm_Initialize() pour chaque formulaire.
- Tu ne peux pas remplir un combobox par code si tu as renseigné rowsource.
- ta feuille "données" ne sert plus à rien ni le nom attribué.
- je t'ai mis le code du bouton "ajouter"
- j'ai affiché tes textbox
- la textbox "prix" n'a pas l'air utile ?
https://www.cjoint.com/?ALdxMOODV7F
Regardes si c'est ce que tu espérais.
Quelques modifications effectuées sur ton code
- Ton initialisation ne fonctionne pas car tu as écrit
Private Sub UserForm1_Initialize() alors que c'est
Private Sub UserForm_Initialize() pour chaque formulaire.
- Tu ne peux pas remplir un combobox par code si tu as renseigné rowsource.
- ta feuille "données" ne sert plus à rien ni le nom attribué.
- je t'ai mis le code du bouton "ajouter"
- j'ai affiché tes textbox
- la textbox "prix" n'a pas l'air utile ?
https://www.cjoint.com/?ALdxMOODV7F
Regardes si c'est ce que tu espérais.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
Modifié par ced3c le 4/12/2011 à 18:03
Modifié par ced3c le 4/12/2011 à 18:03
Merci beaucoup gbinforme
Tu as même traité les textbox :)
Pour le prix je préfère comme tu as fait, je vais supprimer le textbox en trop
C'est pilepoil ce que je voulais
Pour le code, je dois dire que je ne comprends pas tout vu que je ne connais pas le vba, je n'aurais pas réussi à adapter un code pour mon projet.
En tout cas grand merci a toi :)
Puis je juste t'embeter un peu plus ?
Comment puis je faire pour envoyer les donnees du formulaire (en verifiant que tout est bien remplie) vers la feuille traitement ?
Le truc c'est que j'en enverrai plusieurs et qu'elle doivent s'enregistrer en ligne les unes sous les autres
Tu as même traité les textbox :)
Pour le prix je préfère comme tu as fait, je vais supprimer le textbox en trop
C'est pilepoil ce que je voulais
Pour le code, je dois dire que je ne comprends pas tout vu que je ne connais pas le vba, je n'aurais pas réussi à adapter un code pour mon projet.
En tout cas grand merci a toi :)
Puis je juste t'embeter un peu plus ?
Comment puis je faire pour envoyer les donnees du formulaire (en verifiant que tout est bien remplie) vers la feuille traitement ?
Le truc c'est que j'en enverrai plusieurs et qu'elle doivent s'enregistrer en ligne les unes sous les autres
ced3c
Messages postés
237
Date d'inscription
samedi 19 juillet 2008
Statut
Membre
Dernière intervention
28 mai 2016
5
4 déc. 2011 à 18:13
4 déc. 2011 à 18:13
Autant pour moi tu as même fais l'ajout ^^
J'ai mis l'ajout en feuille traitement cela marche tres bien
Grand merci :)
J'ai mis l'ajout en feuille traitement cela marche tres bien
Grand merci :)
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
4 déc. 2011 à 22:06
4 déc. 2011 à 22:06
bonjour ced3c,
Merci pour le retour.
J'ai essayé de garder au mieux ce que tu avais codé. Certes tout ne fonctionnait pas mais ce sont toujours des petits détails comme le nom de ta macro qui créent le plus de soucis.
Le vba est une programmation objet qu'il faut bien intégrer pour en comprendre le fonctionnement et en particulier les fonctions de "change" sur un combobox sont assez complexes à gérer.
C'est en pratiquant régulièrement que tu vas pouvoir maîtriser.
Merci pour le retour.
J'ai essayé de garder au mieux ce que tu avais codé. Certes tout ne fonctionnait pas mais ce sont toujours des petits détails comme le nom de ta macro qui créent le plus de soucis.
Le vba est une programmation objet qu'il faut bien intégrer pour en comprendre le fonctionnement et en particulier les fonctions de "change" sur un combobox sont assez complexes à gérer.
C'est en pratiquant régulièrement que tu vas pouvoir maîtriser.