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 50 51 52 53 54 55 56 57 58 59 60 61 62 63
| Sub test3_création_tableau_dynamique()
'
' test3_création_tableau_dynamique Macro
' Macro enregistrée le 20/02/2009 par djanicot
'
'création tableau croisé dynamique sans les totaux des lignes et des colonnes
'
'********************************************
'au préalable
'********************************************
'on commence par parcourir les feuilles et par delete la feuille PIVOT si elle existe
For idx = 1 To Sheets.Count
If Sheets(idx).Name = "PIVOT" Then
Application.DisplayAlerts = False
Sheets(idx).Delete
Application.DisplayAlerts = False
Exit For
End If
Next idx
'on récupére le nombre de lignes de la feuille data via end(xlup)...
'dans une variable XLROW on place le résultat du pivot
'sur une nouvelle feuille puis on la renomme en PIVOT
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"'data produit'!R1C1:R " & xlrow & "C8").CreatePivotTable TableDestination:=Range("B4") _
, TableName:="Pivot"
With ActiveSheet.PivotTables("Pivot")
.RowGrand = False
.SmallGrid = False
End With
ActiveSheet.PivotTables("Pivot").AddFields RowFields:= _
"classification", ColumnFields:=Array("Année", "Mois")
ActiveSheet.PivotTables("Pivot").PivotFields( _
"Numéro événement").Orientation = xlDataField
Application.CommandBars("PivotTable").Visible = False
ActiveSheet.Name = "Pivot"
'*************************************
' suite enregistrement
'*************************************
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"'data produit'!R1C1:R5000C8").CreatePivotTable TableDestination:=Range("B70" _
), TableName:="Tableau croisé dynamique4"
With ActiveSheet.PivotTables("Tableau croisé dynamique4")
.ColumnGrand = False
.RowGrand = False
.SmallGrid = False
End With
ActiveSheet.PivotTables("Tableau croisé dynamique4").AddFields RowFields:= _
"classification", ColumnFields:=Array("Année", "Mois")
ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields( _
"Numéro événement").Orientation = xlDataField
ActiveWindow.SmallScroll Down:=12
Range("K71").Select
Selection.Delete
ActiveWindow.SmallScroll ToRight:=13
Range("X71").Select
Selection.Delete
Range("W71").Select
Selection.Delete
ActiveWindow.ScrollColumn = 1
End Sub |
Partager