[Excel] Boucle de parcours de sheets

Résolu
deniooo Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   -  
deniooo Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,
J'aimerai parcourir les feuilles de mon fichier afin de les traiter une par une.
j'ai eu une idée qui m'a parrue logique :

Dim curentSheet as Sheets

For eache curentSheet in ActiveWorkbook.Sheets
..
traitement
..
next curentSheet

j'ai aussi eu cette idée :

i = 1
For Each ActiveWorkbook.Sheets(i) In ActiveWorkbook.Sheets
n = n + 1
Next i

Mais apparamment je ne peux pas faire comme ceci.. j'ai bien essayer avec d'autres idées mais rien ne marche.

Un idée de la méthode à adopter ?!

A voir également:

1 réponse

michel_m Messages postés 16602 Date d'inscription   Statut Contributeur Dernière intervention   3 314
 
Bonjour,

à essayer

nbre = ThisWorkbook.Sheets.Count
cptr = 1
Do Until cptr = nbre
With Sheets(cptr)
.range("A2")="zaza" & cptr 'exemple de code
end with
cptr = cptr + 1
Loop

attention : ne pas oublier de mettre 1 point devant toutes les propriétés de l'objet sheets(cptr)

Tu peux remplacer thisWorkbook par activeworkbook...

En espèrant que...

Michel
0
deniooo Messages postés 36 Date d'inscription   Statut Membre Dernière intervention   1
 
Et c'est là que je me sens tout béte :D
je me suis pris la tête pour chercher des trucs super compliqué et j'ai pas pensé au plus simple.. grumbl..

ça me convient parfaitement
Voici ma fonction de test qui fonctionne au poil !

Sub beurk()

totalSheets = ActiveWorkbook.Sheets.Count
Cells(1, 1).Value = totalSheets
curentSheet = 1
Set plageC = Application.ActiveWorkbook.ActiveSheet.UsedRange.Columns("A").Cells
Do Until curentSheet > totalSheets
ActiveWorkbook.Sheets(curentSheet).Select
With Selection
Cells(5, 3).Value = "gj go to home"
End With 'fin du traitement de la feuille
curentSheet = curentSheet + 1 'feuille suivante
Loop 'Fin

End Sub

Libre adaptation de ta proposition ne fonctionne pas au test ;) mais l'idée m'a sauvé merci !

Probléme résolu !
0