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
| Private Sub CommandButton2_Click() 'Bouton Graphique Croisé Dynamique
If Workbooks("Extraction").Sheets("BDD").Range("A1").Value = "" Then
MsgBox "Merci d'effectuer une extraction afin de pouvoir analyser des données.", vbCritical
Else
On Error Resume Next
Sheets("GCD").Activate
'Suppression des GCD et TCD Précédents
Sheets("GCD").Rows("6:1048000").Delete Shift:=xlUp
Sheets("GCD").Range("A6:ZZ1048000").ClearContents
'pour la dernière ligne de la BDD :
derlig = Sheets("BDD").Range("A" & Rows.Count).End(xlUp).Row
'pour la dernière colonne de la BDD :
dercol = Sheets("BDD").Cells(1, Cells.Columns.Count).End(xlToLeft).Column
LetCol = Split(Cells(1, dercol).Address, "$")(1)
'Création TCD et GCD avec mise en forme :
Range("A1:" & LetCol & derlig).Select
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"BDD!R1C1:R" & derlig & "C" & dercol, Version:=xlPivotTableVersion15).CreatePivotTable _
TableDestination:="GCD!R10C1", TableName:="Tableau croisé dynamique1", _
DefaultVersion:=xlPivotTableVersion15
Sheets("GCD").Select
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields("Recette" _
)
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("Tableau croisé dynamique1").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique1").PivotFields("Conformité Densité"), _
"Somme de Conformité Densité", xlSum
With ActiveSheet.PivotTables("Tableau croisé dynamique1").PivotFields( _
"Conformité Densité")
.Orientation = xlPageField
.Position = 1
End With
'Ajout d'un graphique
Sheets("GCD").Activate
' 'pour la dernière ligne de la GCD :
' derlig1 = Sheets("GCD").Range("A" & Rows.Count).End(xlUp).Row - 1
' 'pour la dernière colonne de la GCD :
' dercol1 = Sheets("GCD").Cells(11, Cells.Columns.Count).End(xlToLeft).Column
' LetCol1 = Split(Cells(1, dercol1).Address, "$")(1)
ActiveSheet.Shapes.AddChart2(201, xlColumnClustered).Select
ActiveChart.Parent.Name = "Graphique"
'x = "GCD!A8"
x = "[Extraction.xlsb]GCD!Tableau croisé dynamique1"
ActiveChart.SetSourceData Source:=x
End If
End Sub |
Partager