Créer une sorte de boucle For mais pas sur des Integer [Résolu]

Signaler
Messages postés
10
Date d'inscription
mardi 19 juillet 2005
Statut
Membre
Dernière intervention
24 août 2005
-
Messages postés
10
Date d'inscription
mardi 19 juillet 2005
Statut
Membre
Dernière intervention
24 août 2005
-
Bonjour,

voilà mon problème. Je travail sur une base de données, réparties des données dans diverses feuilles Excel puis exécute une opération assez similaire sur chacune des feuilles.

Pour éviter d'écrire 7 fois quasi le même code je souhaiterai créer une boucle For effectuant l'opération sur une feuille puis l'autre...
Seulement voilà les feuilles ont des noms spécifiques, pas des numéro ...

Que faire ???

Merci de votre aide

2 réponses

Messages postés
76
Date d'inscription
mardi 11 février 2003
Statut
Membre
Dernière intervention
8 septembre 2006

Utilises une boucle "for each ... in ...":

il faut mettre excel en référence du projet.

dim UneFeuille as excel.worksheet
dim objXL as excel.application

for each UneFeuille in objXL.ActiveWorkbook.sheets

'traitement sur "UneFeuille"

next UneFeuille

Voila, je pense que ça répond, mais tu aussi peux utiliser un for classique avec un integer:

dim objXL as excel.application
dim i as integer

for i = 1 to objXL.ActiveWorkbook.sheets.count

'traitement sur "objXL.ActiveWorkbook.sheets(i)"

next UneFeuille

J'ai utilisé "Sheets", mais il faut peut etre utiliser "Worksheets", je ne sais plus...
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 123 internautes nous ont dit merci ce mois-ci

Messages postés
10
Date d'inscription
mardi 19 juillet 2005
Statut
Membre
Dernière intervention
24 août 2005

Parfait!

J'opte pour la première solution, ca va me faire économiser des pages redondantes.

Merci beaucoup