Bonjour,

je suis en train d'essayer de faire une macro VBA en utilisant les formules Index et Equiv d'Excel, mais j'ai un souci sur l'appel des feuilles.
Voici mon souci:
les pages sur lesquelles s'applquent la formule sont variables: je veux faire une moyenne glissante sur 4 semaines au fur et à mesure de l'année. (une page se créé chaque semaine).
voici la partie du code:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
 
nbsemaine = Sheets.Count - 4
Worksheets("S" & nbsemaine).Activate
 
If nbsemaine > 3 Then 'calcul de la moyenne glissante sur 4 semaines
 
'=INDEX(tableau_contenant _la_valeur_à_renvoyer;EQUIV(valeur_recherchée;Tableau_contenant_la_valeur_recherchée;0))
 
Range("C5").Select
    ActiveCell.FormulaR1C1 = _
        "=AVERAGE(INDEX('S10'!RC[-1]:R[29]C[-1],MATCH('S11'!RC[-2],'S10'!RC[-2]:R[29]C[-2],0)),INDEX('S9'!RC[-1]:R[29]C[-1],MATCH('S11'!RC[-2],'S9'!RC[-2]:R[29]C[-2],0)),INDEX('S8'!RC[-1]:R[29]C[-1],MATCH('S11'!RC[-2],'S8'!RC[-2]:R[29]C[-2],0)),RC[-1])"
    Range("C6").Select
seulement je souhaite faire une boucle for afin de faire évoluer le nom des feuilles dans la formule.
Quelle est la syntaxe à utiliser pour l'appel des feuilles?

merci à vous.