ComboBox remplie à partir d'un autre fichier

Arnault30

XLDnaute Nouveau
Bonjour à toutes zé tous.

Tout d'abord, veuillez m'excuser si cette question a déjà été posée. Google et les différents moteurs de recherche sont venus à bout de moi en cette fin de journée chargée.

Voila ma question:

Je possède un fichier excel quelconque avec une comboBox
et
un fichier excel avec un tableau dont le nom est "Data_planets"


peu importe la plage de cellule qu'il utilise. Il suffit de savoir que c'est une colonne avec le nom des 8 planètes du système solaire

Ce que je souhaite faire et l'objet de ma question :

Remplir la comboBox à l'aide de l'option .AddItem avec le tableau "Data_planets" dans un autre fichier excel sans avoir à utiliser la plage de cellules concernées si possible (cad, sans utiliser par exemple A1, A2, A3 etc... Seulement le tableau "Data_planets").


Pourquoi ? Parce que ce tableau ou un autre sur le même modèle sera amené à grossir.

Voila je vous remercie d'avance beaucoup pour votre aide :)
 
Dernière édition:

jeanpierre

Nous a quitté
Repose en paix
Re : ComboBox remplie à partir d'un autre fichier

Bonsoir Arnault30 et Bienvenue à un collègue astronome.

Si tu nous déposais tes deux fichiers (sous zip de préférence), il serait plus facile d'étudier la chose.

Bonne soirée.

Jean-Pierre (SP Eclipses)
 

Arnault30

XLDnaute Nouveau
Re : ComboBox remplie à partir d'un autre fichier

Oui pardon c'est mieux.

Dans Fichier1.xls on trouve la comboBox à remplir avec le Fichier2.xls


Merci :)


ps: Je ne suis pas réellement Astronome, mais j'ai fait de l'astrophysique et je bosse dans le spatial, d'où cette histoire de planètes !
Ceci étant dit: Je te souhaite une bonne année de l'astronomie ! :)
 

Pièces jointes

  • Fichier1.xls
    39 KB · Affichages: 155
  • Fichier2.xls
    27.5 KB · Affichages: 143
  • Fichier1.xls
    39 KB · Affichages: 159
  • Fichier2.xls
    27.5 KB · Affichages: 152
  • Fichier1.xls
    39 KB · Affichages: 188
  • Fichier2.xls
    27.5 KB · Affichages: 169
Dernière édition:

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : ComboBox remplie à partir d'un autre fichier

Bonjour,


Code:
Sub auto_open()
 'Microsoft activeX dataobject doit être coché
  Dim rs As ADODB.Recordset
  Set cnn = New ADODB.Connection
  cnn.Open "DRIVER={Microsoft Excel Driver (*.xls)};DBQ=" & ThisWorkbook.Path & "\" & "fichier2.xls"
  Set rs = cnn.Execute("SELECT planètes FROM planètes WHERE planètes<>''")
  Sheets(1).ComboBox1.List = Application.Transpose(rs.GetRows)
  rs.Close
  cnn.Close
  Set rs = Nothing
  Set cnn = Nothing
End Sub

JB
Formation Excel VBA JB
 

Pièces jointes

  • Fichier1.xls
    43 KB · Affichages: 305
  • Fichier1.xls
    43 KB · Affichages: 285
  • Fichier1.xls
    43 KB · Affichages: 254
  • Fichier2.xls
    16 KB · Affichages: 231
  • Fichier2.xls
    16 KB · Affichages: 259
  • Fichier2.xls
    16 KB · Affichages: 265

Arnault30

XLDnaute Nouveau
Re : ComboBox remplie à partir d'un autre fichier

Merci beaucoup pour ton aide !

Ca marche bien. Je veux tout de même creuser un peu le principe, étant débutant, je ne connais pas forcement bien les fonctions que tu utilises.
 
Dernière édition:

Arnault30

XLDnaute Nouveau
Re : ComboBox remplie à partir d'un autre fichier

Je vous présente mes excuses, je viens de trouver la solution en cherchant autre chose, ici même sur le forum.
Donc la solution qui me convient peut être le mieux c'est tout simplement un truc de ce genre :

Code:
ComboBox1.List = Workbooks("Fichier2.xls").Sheets("Feuille1").Range("Planetes").Value

Merci à ceux qui ont cherché :)
Bonne journée à tout le monde.
 

BOISGONTIER

XLDnaute Barbatruc
Repose en paix
Re : ComboBox remplie à partir d'un autre fichier

>ComboBox1.List = Workbooks("Fichier2.xls").Sheets("Feuille1").Range("Planetes").Value

-Il faut que fichier2.xls soit ouvert.

-Si fichier2.xls est ouvert, il n'y a pas besoin de VBA.
Dans ListfillRange: Fichier2.xls!Planètes

JB
 
Dernière édition:

Arnault30

XLDnaute Nouveau
Re : ComboBox remplie à partir d'un autre fichier

Bonjour

Ok je comprend mieux l'intérêt de la technologie ADO alors...
Je tiens tout de même à utiliser une macro. C'est peut être un peu extrémiste de ma part, mais je trouve les choses plus visibles quand on va voir dans le code si ce dernier est bien commenté.

Merci :)
 

Discussions similaires

Statistiques des forums

Discussions
312 747
Messages
2 091 605
Membres
105 007
dernier inscrit
adla