Bonjour
je suis à la recherche d'un code qui me permette d'avoir la liste des feuilles d'un classeur Excel quelconque?
Bonjour
je suis à la recherche d'un code qui me permette d'avoir la liste des feuilles d'un classeur Excel quelconque?
Un truc dans ce genre:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Sub test() For i = 1 To ActiveWorkbook.Worksheets().Count MsgBox Worksheets(i).Name Next i End Sub
ce code est très interréssant mais il ne fonctionne pas
en fait, je croit que le problème se situe à
mais je n'arrive pas à savoir pourquoi
Code : Sélectionner tout - Visualiser dans une fenêtre à part For i = 1 To ActiveWorkbook.Worksheets().Count
le message estL'indice n'appartient pas à la selection
en léve les parenthéses...()
Version d'excel ?
petit erratum :
ce qui ne fonctionne pas, c'est ma petite modif perso :
Code : Sélectionner tout - Visualiser dans une fenêtre à part For i = 1 To Workbooks(File).Worksheets().Count
il y as quoi dans variable File ?
voila mon code complet
le but est de lister les feuilles du classeur désigné par textbox2
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Dim file As String file = TextBox2.Value Application.DisplayAlerts = False 'blocage des messages d'erreurs 'ouverture du fichier Workbooks.Open Filename:=file For i = 1 To Workbooks(File).Worksheets().Count MsgBox Worksheets(i).Name Next i 'fermeture du fichier Workbooks(File).Close savechanges:=False
et il ne marche pas ton code ? tu met bien le nom complet du fichier dans textbox1 ?
textbox2 est le résultat de ce code
Je n'ai aucun doute sur lui
Code : Sélectionner tout - Visualiser dans une fenêtre à part Application.GetOpenFilename("Fichers Excel (*.xls),*.xls")
En fait, pour cibler le problème, c'est le compteur qui ne fonctionne pas :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Workbooks(File).Worksheets().Count
Non, mais j'insiste sur la question de bbil :
au moment du plantage, si tu mets la souris sur la variable "File", tu en verras le contenu. Dis nous ce qu'elle contient. Ou au moins, compare ce contenu avec le nom du classeur ouvert (des fois, il n'y a pas le .xls).
la variable File donne le
Effectivement,vous me mettez un doute!
Code : Sélectionner tout - Visualiser dans une fenêtre à part d:\moi\Bureau\Nouveau dossier\monclasseur.xls
ca devrait peut etre donner :
pour etre utile?
Code : Sélectionner tout - Visualiser dans une fenêtre à part monclasseur.xls
si c'est le cas, alors comment je le récupere son nom?
Il est quand même nettement plus simple d'utiliser
Code : Sélectionner tout - Visualiser dans une fenêtre à part For Each oSheet In WorkSheets
bonsoir à tous
tu peux essayer cette adaptation
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15 Dim File As String Dim Wb As Workbook Dim i As Byte File = TextBox2.Value Application.DisplayAlerts = False 'blocage des messages d'erreurs 'ouverture du fichier Set Wb = Workbooks.Open(Filename:=File) For i = 1 To Wb.Worksheets.Count MsgBox Wb.Worksheets(i).Name Next i Wb.Close savechanges:=False
bon week end
michel
Je ne vois pas ce que ça change, AlainTech.
Le problème, il est sur le classeur, pas sur la façon de parcourir les feuilles. Enlève "Workbooks..." dans le code du départ, et ça marchera aussi, mais s'il a plusieurs classeurs ouverts en même temps...
Et effectivement, dans File, tu ne dois mettre QUE le nom du classeur, sans le chemin complet.
ce dernier code fonctionne à merveille!
merci bueacoup tout le monde!
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager