|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Futur Membre du Club
![]() Inscription : février 2011 Messages : 64 ![]() |
Bonjour,
J'aimerai savoir comment copier un menu déroulant existant d'un fichier A pour un autre fichier ( fichier B) en vba? En effet, j'ai un programme qui me copie déjà les base de données d'une feuille d'un fichier qui contient les listes déroulantes. Seulement je n'arrive pas à copier aussi sa liste déroulante associée. Autrement dit, je veux maintenir le même type de format de mon fichier initial sur mon fichier créé Cordialement A |
|
|
00
|
|
|
#2 | ||
|
Membre régulier
![]() Guillaume ChaudemancheBack Office Marchés Inscription : mars 2011 Messages : 39 ![]() |
Bonjour,
Il faut utiliser la propriété Validation de l'objet Range. (F1 ! Si tu veux par exemple mettre en A1 ta liste déroulante qui porte sur les choix des cellules E1 à E4, le code sera le suivant : Code :
Guillaume. |
||
|
|
00
|
|
|
#3 | ||
|
Futur Membre du Club
![]() Inscription : février 2011 Messages : 64 ![]() |
Merci Golonne,
pour ta réponse, mais cela ne répond pas exactement à mes besoins. J'ai une macro qui copie les valeurs se trouvant dans un fichier. ces valeurs sont collées dans un fichier. Mais seulement mon premier fichier contient aussi des listes (menus) déroulantes. Ma question est de savoir comment copier (ou récupérer) aussi ces listes déroulantes pour le second fichier? Tu trouveras un bout de mon programme ci-dessus. Cordialement Code :
|
||
|
|
00
|
|
|
#4 |
|
Membre régulier
![]() Guillaume ChaudemancheBack Office Marchés Inscription : mars 2011 Messages : 39 ![]() |
Bonjour,
Ca mérite un éclaircissement en effet. Je pensais que tes listes déroulantes étaient dans ta feuille de calcul (et rien dans ton post initial ne laissait présager le contraire). Or il y a cette ligne : Tu utilises un UserForm ? Les listes dont tu parles apparaissent dans ce UserForm (ComboBox ou ListBox) ? Cordialement, Guillaume |
|
|
00
|
|
|
#5 | ||
|
Futur Membre du Club
![]() Inscription : février 2011 Messages : 64 ![]() |
Oui, j'utilise un userform, mais les listes dont je parle sont utilisées dans feuille initiale pour faciliter le remplissage des cellules de cette feuille. Etant donné que je copie ces données, je veux aussi copier cette liste déroulante dans le fichier B pour me faciliter aussi le remplissage de ma feuille. Je ne sais pas si le problème est bien posé?
Je suis entrain d'essayer un truc mais cela ne fonctionne pas (voir code ci-dessous) avec ce code, je récupère toutes les valeurs y compris les listes déroulantes? si oui, supposons que sheets("AA") à 3 colonnes contenant chacune une liste. Je veux un code permettant de réécrire (stocker) chacune de listes et son contenu quelque part dans le workbooks("b.xls").sheets(1) afin de l'utiliser dans une autre feuille du même dossier plu tard. est possible? si oui, comment faire? je pense que cela peut être une alternative à mon problème. Cordialement Aubin Code :
|
||
|
|
00
|
|
|
#6 |
|
Membre régulier
![]() Guillaume ChaudemancheBack Office Marchés Inscription : mars 2011 Messages : 39 ![]() |
Ok je vois maintenant. Pour reprendre ton exemple :
Classeur 1.FeuilleAA : tes données sur 3 colonnes A,B,C. La colonne A alimente une liste de choix, B idem, C idem. Sur le même classeur une autre feuille"BB" avec 3 cellules qui prennent la valeur de ces trois listes, respectivement. Tu veux conserver les données de ta feuille AA dans un autre classeur (Classeur2) qui comporte une feuilleBB dans lequel on retrouve tes 3 cellules avec la même liste de choix proposés dans le classeur 1. J'ai tout bon ? Guillaume. |
|
|
00
|
|
|
#7 |
|
Futur Membre du Club
![]() Inscription : février 2011 Messages : 64 ![]() |
Parfaitement bon, mais cela se doit d'être automatisé cette routine. pas de manuelle.
"Tu veux conserver les données de ta feuille AA dans un autre classeur (Classeur2) qui comporte une feuilleBB dans lequel on retrouve tes 3 cellules avec la même liste de choix proposés dans le classeur 1. " oui et par la suite générer une autre feuille dans le classeur 2 i.e feuille CC (dans classeur2) avec la possibilité également d'utiliser la liste déroulante issue de la feuille AA |
|
|
00
|
|
|
#8 |
|
Membre régulier
![]() Guillaume ChaudemancheBack Office Marchés Inscription : mars 2011 Messages : 39 ![]() |
Bonjour Hobine,
J'ai du boulot aujourd'hui alors je risque de ne pas pouvoir te répondre de suite. Cependant, regarde ma première réponse, je pense que la solution est là. Je te renvoie un classeur de test ce midi A plus tard. Guillaume. |
|
|
00
|
|
|
#9 |
|
Futur Membre du Club
![]() Inscription : février 2011 Messages : 64 ![]() |
Bonjour Guillaume,
Je mets en pièce jointe un exemple de fichiers que j'utilise. 1. Fichier "test2" contient les 2 onglets BdD et listes. l'onglet BdD contient les listes deroulantes. 2. 20120117PdS contient au depart aussi 2 onglets et des macros avec bug à l'interieur. Travail souhaité: - copier uniquement les valeurs de l'onglet BdD en generant un onglet dans le classeur 20120117PdS - Copier l'onglet "listes" en generant une nouvelle feuille dans le classeur 20120117PdS - generer une nouvelle feuille dans le classeur 20120117PdS où a) copiera l'entête et le format y compris les bordures de l'onglet BdD du classeur "test2" b) écrire un code permettant à l'utilisateur dès qu'il veut remplir ou saisir les données sur une ligne de cette feuille que les cellules puissent lui proposer les mêmes listes déroulantes de l'onglet "BdD" du fichier "test2". ma macro contient les bugs , se trouve dans le fichier 20120117PdS . Pourrez vous s'il vous plaît jeter un coup d'oeil dessus et l’améliorer? Cordialement Aubin |
|
|
00
|
|
|
#10 |
|
Futur Membre du Club
![]() Inscription : février 2011 Messages : 64 ![]() |
oublie le fichier test en PJ
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com