Bonjour,
J'essaie de récupérer les noms de toutes les feuilles de tous mes
classeurs avec une boucle. J'ai fait en exécution pas à pas pour
vérifier.
workbooks(1) contient 3 feuilles
workbooks(2) contient 2 feuilles
A la 1ère boucle sur workbooks(1), je fais bien :
for jj=1 to 3
Mais Très curieusement, à la 2nde boucle sur workbooks(2), je fais
également 3 boucles sur jj !
Je récupère néanmoins le bon nom dans nomSh sauf évidemmment pour le
le 3ème qui est un nom qui sort de ne je ne sais où !
Pour résumer c'est ActiveWorkbook.Sheets.Count qui ne colle pas.
Si qqun peut m'aider ...
Merci.
Serge
Mon code :
-----------
For i = 1 To Workbooks.Count
Workbooks(i).Activate
For jj = 1 To ActiveWorkbook.Sheets.Count
nomSh = ActiveWorkbook.Sheets(jj).Name
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
anonymousA
bonjour,
les 2 programmes suivants sont équivalents même si le secod est plus rapide que le 1er. Ces 2 procs trouveront toutes les feuilles , même celles qui sont cachées et cells qui ne sont pas des worksheets ( feuilles graphiques, dialogsheets...).
For i = 1 To Workbooks.Count Workbooks(i).Activate For jj = 1 To ActiveWorkbook.Sheets.Count MsgBox ActiveWorkbook.Sheets(jj).Name Next Next
For i = 1 To Workbooks.Count For jj = 1 To Workbooks(i).Sheets.Count MsgBox Workbooks(i).Sheets(jj).Name Next Next
A+
Bonjour, J'essaie de récupérer les noms de toutes les feuilles de tous mes classeurs avec une boucle. J'ai fait en exécution pas à pas pour vérifier. workbooks(1) contient 3 feuilles workbooks(2) contient 2 feuilles
A la 1ère boucle sur workbooks(1), je fais bien : for jj=1 to 3
Mais Très curieusement, à la 2nde boucle sur workbooks(2), je fais également 3 boucles sur jj ! Je récupère néanmoins le bon nom dans nomSh sauf évidemmment pour le le 3ème qui est un nom qui sort de ne je ne sais où !
Pour résumer c'est ActiveWorkbook.Sheets.Count qui ne colle pas.
Si qqun peut m'aider ... Merci. Serge
Mon code : ----------- For i = 1 To Workbooks.Count Workbooks(i).Activate For jj = 1 To ActiveWorkbook.Sheets.Count nomSh = ActiveWorkbook.Sheets(jj).Name
bonjour,
les 2 programmes suivants sont équivalents même si le secod est plus rapide
que le 1er. Ces 2 procs trouveront toutes les feuilles , même celles qui sont
cachées et cells qui ne sont pas des worksheets ( feuilles graphiques,
dialogsheets...).
For i = 1 To Workbooks.Count
Workbooks(i).Activate
For jj = 1 To ActiveWorkbook.Sheets.Count
MsgBox ActiveWorkbook.Sheets(jj).Name
Next
Next
For i = 1 To Workbooks.Count
For jj = 1 To Workbooks(i).Sheets.Count
MsgBox Workbooks(i).Sheets(jj).Name
Next
Next
A+
Bonjour,
J'essaie de récupérer les noms de toutes les feuilles de tous mes
classeurs avec une boucle. J'ai fait en exécution pas à pas pour
vérifier.
workbooks(1) contient 3 feuilles
workbooks(2) contient 2 feuilles
A la 1ère boucle sur workbooks(1), je fais bien :
for jj=1 to 3
Mais Très curieusement, à la 2nde boucle sur workbooks(2), je fais
également 3 boucles sur jj !
Je récupère néanmoins le bon nom dans nomSh sauf évidemmment pour le
le 3ème qui est un nom qui sort de ne je ne sais où !
Pour résumer c'est ActiveWorkbook.Sheets.Count qui ne colle pas.
Si qqun peut m'aider ...
Merci.
Serge
Mon code :
-----------
For i = 1 To Workbooks.Count
Workbooks(i).Activate
For jj = 1 To ActiveWorkbook.Sheets.Count
nomSh = ActiveWorkbook.Sheets(jj).Name
les 2 programmes suivants sont équivalents même si le secod est plus rapide que le 1er. Ces 2 procs trouveront toutes les feuilles , même celles qui sont cachées et cells qui ne sont pas des worksheets ( feuilles graphiques, dialogsheets...).
For i = 1 To Workbooks.Count Workbooks(i).Activate For jj = 1 To ActiveWorkbook.Sheets.Count MsgBox ActiveWorkbook.Sheets(jj).Name Next Next
For i = 1 To Workbooks.Count For jj = 1 To Workbooks(i).Sheets.Count MsgBox Workbooks(i).Sheets(jj).Name Next Next
A+
Bonjour, J'essaie de récupérer les noms de toutes les feuilles de tous mes classeurs avec une boucle. J'ai fait en exécution pas à pas pour vérifier. workbooks(1) contient 3 feuilles workbooks(2) contient 2 feuilles
A la 1ère boucle sur workbooks(1), je fais bien : for jj=1 to 3
Mais Très curieusement, à la 2nde boucle sur workbooks(2), je fais également 3 boucles sur jj ! Je récupère néanmoins le bon nom dans nomSh sauf évidemmment pour le le 3ème qui est un nom qui sort de ne je ne sais où !
Pour résumer c'est ActiveWorkbook.Sheets.Count qui ne colle pas.
Si qqun peut m'aider ... Merci. Serge
Mon code : ----------- For i = 1 To Workbooks.Count Workbooks(i).Activate For jj = 1 To ActiveWorkbook.Sheets.Count nomSh = ActiveWorkbook.Sheets(jj).Name