Je travaille sur un classeur Excel sur lequel je récupère des données via Report Builder; la requête créée des feuilles(le noms sont différents à chaque fois). J'ai une macro qui me prépare les feuilles (suppression feuilles vides, mise en forme...); j'ai besoin que cette macro sélectionne toutes les feuilles, quelque soit leur nom. Ce que j'ai fait marche uniquement si les feuilles portent le même nom à chaque fois :
Dim TableDesFeuilles() as string
Dim i as integer
Dim S as Worksheet
i=0
For each S in MyWbook.sheets
Redim Preserve TableDesFeuilles(i)
TableDesFeuilles(i) = S.Name
i = i + 1
Next
MyWbook.sheets(TableDesFeuilles).select
End Sub
Remplace MyWbook par le nom de ton classeur si tu travaille sur plusieurs classeurs en même temps sinon ne le précise pas. il prendra le classeur actif par defaut.
Voila, ravi d'avoir pu t'aider !
Perceval Blakeney.
Ou de tester l'etat des feuilles (S.Visible = true / false) dans la boucle :
Si Visible = True alors ajoute le nom au tableau (procedure donnée plus haut).
Sinon passe directement à la feuille suivante.