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
|
Dim fichier_source As Workbook
Dim plage As Range
Dim classeur As Workbook
Dim nom As String
Set classeur = ThisWorkbook
xls = Application.GetOpenFilename("Excel files (*.xlsx), *.xlsx", , "Choisir le fichier source.")
If xls <> False Then
Set fichier_source = Application.Workbooks.Open(xls)
nom = fichier_source.Name
fichier_source.Activate
Sheets(1).Activate
Dim dl As Long, dc As Long
dl = ActiveSheet.Range("a" & Rows.Count).End(xlUp).Row
dc = ActiveSheet.Cells(1, Columns.Count).End(xlToLeft).Column
'Set plage = ActiveSheet.Range(Cells(1, 1), Cells(dl, dc))
Set plage = ActiveSheet.Range(Cells(1, 1), Cells(dl, dc))
classeur.Activate
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"[" + nom + "]" + plage, Version:=6). _
CreatePivotTable TableDestination:="Feuil1!R1C1", TableName:= _
"Tableau croisé dynamique1", DefaultVersion:=6
Sheets("Feuil1").Select
Cells(1, 1).Select
fichier_source.Activate
ActiveWorkbook.Close False
End If |
Partager