Bonjour à tous,

J'ai un petit soucis avec une de mes macros que je tente de developper.
Je ne m'y connais quasiment pas en VBA, alors j'utilise beaucoup l'enregistreur de macro.

Mon but est d'obtenir le tbc sous cette forme :

au lieu de celle là :


La macro n'arrive pas à enregistrer correctement le drag & drop du champ donnée dans la case où est inscrit "somme". (voir 1er screenshot)

J'ai pensé à 2 solutions :
- soit obtenir directement le tbc sous la forme voulue en le paramètrant (mais j'ai beau avoir cherché je n'ai pas réussi à trouver le réglage pour obtenir le tbc directement sous cette forme)
- soit reussir à modifier la macro pour qu'elle puisse m'enregistrer la modification de la presentation du tbc

Est-ce possible selon vous ? Pouvez vous m'aider ?
Je precise que j'utilise Excel 2000 (wahouu quelle chance... !)
Merci beaucoup d'avance !




Voici la macro :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
Sub TatCivil()
'
' TatCivil Macro
' Macro enregistrée le 30/07/2010 par T0118096
'
 
'
    Sheets("TAT Civil 2010").Select
    Range("G3:S2500").Select
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
        "'TAT Civil 2010'!R3C7:R2500C19").CreatePivotTable TableDestination:="", _
        TableName:="Tableau croisé dynamique2"
    ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
    ActiveSheet.Cells(3, 1).Select
    With ActiveSheet.PivotTables("Tableau croisé dynamique2")
        .ColumnGrand = False
        .RowGrand = False
        .SmallGrid = False
    End With
    ActiveSheet.PivotTables("Tableau croisé dynamique2").AddFields RowFields:= _
        Array("PN", "Données")
    With ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("PN")
        .Orientation = xlDataField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("TAT FRS" _
        )
        .Orientation = xlDataField
        .Caption = "Moyenne TAT FRS"
        .Position = 2
        .Function = xlAverage
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields( _
        "Délai réalisation devis")
        .Orientation = xlDataField
        .Caption = "Moyenne Délai réalisation devis"
        .Function = xlAverage
    End With
    Charts.Add
    ActiveChart.SetSourceData Source:=Sheets("Feuil1").Range("A3")
    ActiveChart.Location Where:=xlLocationAsNewSheet
    Sheets("Feuil1").Select
    Range("B3").Select
    With ActiveSheet.PivotTables("Tableau croisé dynamique2").PivotFields("Données" _
        )
        .Orientation = xlColumnField
        .Position = 1
    End With
End Sub