Dim nm_S(1 To 8) As String
Dim tcd_temp As String
Dim i As Byte
tcd_temp = 'TCDBlaBla'
' Définition des noms de champ nm_S() par une boucle
For i = 1 To 8
nm_S(i) = Choose(i, 'Champ1', 'Champ2', 'Champ3', 'Champ4', _
'Champ5', 'Champ6', 'Champ7', 'Champ8')
Next i
' Bien sûr, à la place de la boucle ci-dessus, on peut aussi
' définir ces éléments de façon classique, en faisant :
' nm_S(1) = 'Champ1'
' nm_S(2) = 'Champ2'
' etc...
' ...
' Ensuite on fait :
For i = 1 To 8
ActiveSheet.PivotTables(tcd_temp).AddDataField ActiveSheet. _
PivotTables(tcd_temp).PivotFields(nm_S(i)), _
'Somme de S' & i, xlSum
Next i