[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 -
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 ?!
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:
- [Excel] Boucle de parcours de sheets
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Fiche de pointage excel - Télécharger - Tableur
- Déplacer colonne excel - Guide
- Si ou excel - Guide
1 réponse
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
à 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
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 !