Utilisation de VB pour lister des données Excel dans une Combo

ptitelili059 Messages postés 43 Date d'inscription jeudi 18 octobre 2007 Statut Membre Dernière intervention 9 juin 2010 - 29 avril 2008 à 19:23
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 29 avril 2008 à 20:42
Bonjour je suis débutante en VB6 et je voudrais réaliser une appli qui soit en rapport avec un fichier Excel.

Mon fichier Excel existe  déjà. Je voudrais pouvoir lister les valeurs d'une colonne à l'aide d'une combo box mais je ne sais pas du tout comment m'y prendre. Même pour ouvrir le fichier Excel à proprement dit. J'ai beau lire les différents messages laissés sur le forum je n'y arrive toujours pas.

Quelqu'un pourrait-t-il me donner un petit coup de main svp car je suis totalement perdue  

Merci d'avance

Lyse

2 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 avril 2008 à 20:42
Salut,
Essaie ceci

il faut cocher la référence Microsoft Excel 9.0 Object Library (9.0 ou equivalent)
pour ajouter une référence Menu Projet => Références

'Objet excel 
Dim XlApp As New Excel.Application 
'Objet Classeur
Dim XlWorkBook As Excel.Workbook 
Dim XlCell As Excel.Range
XlApp.Visible = True
'Ouvre un classeur neuf
Set XlWorkBook = XlApp.Workbooks.Open("C:\Test.Xls")
'[...les mofid => Objets Worksheets... Ranges]
'récupère les infos de la colonne 1 De la feuille 1

Dim i as integer
XlCell = XlWorkBook.WorkSheets(1).Range("A1")

While Not IsEmpty(XlCell)
  NomCombo.AddItem(XlCell.Text) 'NomCombo.AddItem(XlCell.Value)
  i = i + 1
  XlCell = XlWorkBook.WorkSheets(1).Range("A" & i)
Wend

'Sauveagrde le classeur
Call XlWorkBook.Close(True) 
'Quitte l'application
Call XlApp.Quit 
'Destruction des objets
Set XlApp = Nothing 
Set XlWorkBook = Nothing, ----
(Coloration syntaxique automatique par Kenji)

@+: Ju£i?n
Pensez: Réponse acceptée
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
29 avril 2008 à 20:42
Re,
Après relecture il manque une ligne

Dim i as integer
XlCell =  XlWorkBook.WorkSheets(1).Range("A1")
i = 1

While Not IsEmpty(XlCell)
  NomCombo.AddItem(XlCell.Text) 'NomCombo.AddItem(XlCell.Value)
  i  = i + 1
  XlCell = XlWorkBook.WorkSheets(1).Range("A" & i)
Wend

@+: Ju£i?n
Pensez: Réponse acceptée
0
Rejoignez-nous