ptitelili059
Messages postés43Date d'inscriptionjeudi 18 octobre 2007StatutMembreDernière intervention 9 juin 2010
-
5 juin 2008 à 22:13
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
6 juin 2008 à 12:24
Bonsoir à tous
Voilà j'ai un petit programme qui me liste tous le contenu de ma colonne mais quand je lance le programme, j'ai l'erreur suivante :
"Erreur 1004. Erreur définie par l'application ou par l'objet".
Voici le code que j'ai mis :
mois = Combo3.Text
'Ajout des dates
'Ouverture et creation de l'application Excel
Set AppExcel = CreateObject("Excel.Application")
'Ouverture du fichier Excel Compte.xls
Set wbExcel = AppExcel.Workbooks.Open(App.Path & "\Compte.xls")
'Sélection de la feuille
If (Combo3.Text <> "") Then
Set wsExcel = wbExcel.Worksheets(mois)
While (wsExcel.Cells(i, 2) <> "")
Combo5.AddItem (Cells(i, 2))
Wend
End If
L'erreur est indiqué pour la ligne suivante :
Set wsExcel = wbExcel.Worksheets(mois)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 5 juin 2008 à 23:44
Ah non, autant pour moi : En effet, il se pourrait bien que ce soit du code VB6.
De plus :
Dans Combo5.AddItem (Cells(i, 2))
"Cells" n'étant pas précédé de l'objet 'source' (wsExcel.Cells par exemple), ce mot clé n'existe pas sous VB6.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
bigfish_le vrai
Messages postés1835Date d'inscriptionvendredi 13 mai 2005StatutMembreDernière intervention20 novembre 201315 6 juin 2008 à 00:27
Salut,
Jack ptitlili059 dit avoir un probleme sur la ligne : Set wsExcel = wbExcel.Worksheets(mois)
j'utilise la meme methode dans un de mes code et ça marche bien. ptitlili059 comment as-tu declaré wsExcel ?
Si tu l'as pas declarée en object je te conseil de le faire.
De plus la suite me parait un peut bizzard ! regarde mes modif en bleu
While (wsExcel.Cells(i, 2).Value <> "")
Combo5.AddItem (wsExcel.Cells(i, 2).Value)
Wend
A+
Vous n’avez pas trouvé la réponse que vous recherchez ?
ptitelili059
Messages postés43Date d'inscriptionjeudi 18 octobre 2007StatutMembreDernière intervention 9 juin 2010 6 juin 2008 à 06:22
J'ai essayé tout ce que vous m'avez conseillé mais maintenant mo, programme plante complètement
Voici le code que j'ai mis :
If (Combo3.Text <> "") Then
Set wsExcel = wbExcel.Worksheets(mois)
i = 7
While (wsExcel.Cells(i, 2).Value <> "")
Combo5.AddItem (wsExcel.Cells(i, 2).Value)
Wend
End If
i = 7 car je veux commencer à partir de la ligne 7
En fait j'ai un ensemble de date dans la colonne B de ma feuille Excel et je veux lister toutes les dates de cette colonne. La première date est située à la case B7. Est-ce que le fait que ce soit une date change quelque chose ?
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 6 juin 2008 à 12:24
Re
Ce n'est pas que ton programme plante, c'est qu'il tourne en rond :
While (wsExcel.Cells(i, 2).Value <> "")
Combo5.AddItem (wsExcel.Cells(i, 2).Value)
Wend
Tu as oublié d'incrémenter 'i'
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)