Bonjour à tout les membres de XLD,
J'ai actuellement un probléme sur un code VBA qui me permet de créer un TCD sur un fichier à partir d'une feuille d'un autre fichier. Etant assez novice en VBA, j'ai utilisé l'option enregistreur de Macro malheuresement un message d'erreur apparait lorsque je relance mon pgm à partir d'un bouton : "Erreur d'execution 5 : Argument ou appel de procédure incorrect"
Un probléme fréquent pour la création de TCD me direz vous, j'ai pu remarquer sur différents forum que pas mal de personnes étaient confrontées à ce pb, sans pour autant pouvoir trouver la solution au mien.
j'ai renommé mon TCD créé afin d'éviter les problémes du genre "Tableau croisé dynamiqueN" n'éxiste pas...mais rien y fait et je m'arrache les cheveux depuis environ 2 semaines!! Je vous copie/colle mon pgm en éspérant qu'une âme charritable pourra m'aider!
Il semblerai que l'erreur se situe au niveau de: "DefaultVersion:=xlPivotTableVersion12_"
Et pour information j'utilise XL2007.
En espérant avoir été assez précis dans ma demande, j'éspére qu'une solution est possible!
merci à tous!
A+
J'ai actuellement un probléme sur un code VBA qui me permet de créer un TCD sur un fichier à partir d'une feuille d'un autre fichier. Etant assez novice en VBA, j'ai utilisé l'option enregistreur de Macro malheuresement un message d'erreur apparait lorsque je relance mon pgm à partir d'un bouton : "Erreur d'execution 5 : Argument ou appel de procédure incorrect"
Un probléme fréquent pour la création de TCD me direz vous, j'ai pu remarquer sur différents forum que pas mal de personnes étaient confrontées à ce pb, sans pour autant pouvoir trouver la solution au mien.
j'ai renommé mon TCD créé afin d'éviter les problémes du genre "Tableau croisé dynamiqueN" n'éxiste pas...mais rien y fait et je m'arrache les cheveux depuis environ 2 semaines!! Je vous copie/colle mon pgm en éspérant qu'une âme charritable pourra m'aider!
Code:
Sub Indicateur_perf()
'Ouverture de la base de contrôle#####
filetoopen = Application.GetOpenFilename("Fichiers Excel(*.xls;*.xlsx;*.xlsm), *.xls", , "Choisir le fichier à ouvrir")
If filetoopen = False Then
MsgBox "Operation annulée", vbExclamation
Exit Sub
End If
Workbooks.Open filetoopen
'Création du TCD
Windows("mon_fichier_base").Activate
Workbooks("mon_fichier_destination") _
.PivotCaches.Add(SourceType:=xlDatabase, _
SourceData:="[mon_fichier_base]Base!R18C1:R4122C57").CreatePivotTable _
TableDestination:="[mon_fichier_destination]Feuil1!R1C1", _
TableName:="TCD_Col", DefaultVersion:=xlPivotTableVersion12_
Windows("mon_fichier_destination"). _
Activate
Sheets("Feuil1").Select
Cells(1, 1).Select
'Mise en place des données
With ActiveSheet.PivotTables("TCD_Col").PivotFields("Mois")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("TCD_Col").PivotFields("Mois")
.Orientation = xlPageField
.Position = 1
End With
ActiveWindow.SmallScroll Down:=-15
With ActiveSheet.PivotTables("TCD_Col").PivotFields( _
"Collection")
.Orientation = xlRowField
.Position = 1
End With
ActiveSheet.PivotTables("TCD_Col").AddDataField ActiveSheet. _
PivotTables("TCD_Col").PivotFields("Quantité fabriquée"), _
"Nombre de Quantité fabriquée", xlCount
With ActiveSheet.PivotTables("TCD_Col").PivotFields( _
"Nombre de Quantité fabriquée")
.Caption = "Somme de Quantité fabriquée"
.Function = xlSum
End With
ActiveSheet.PivotTables("TCD_Col").AddDataField ActiveSheet. _
PivotTables("TCD_Col").PivotFields("Quantité contrôlée"), _
"Nombre de Quantité contrôlée", xlCount
ActiveSheet.PivotTables("TCD_Col").AddDataField ActiveSheet. _
PivotTables("TCD_Col").PivotFields( _
"Quantité refusé / contrôlée"), "Nombre de Quantité refusé / contrôlée", _
xlCount
With ActiveSheet.PivotTables("TCD_Col").PivotFields( _
"Nombre de Quantité contrôlée")
.Caption = "Somme de Quantité contrôlée"
.Function = xlSum
End With
End Sub
Il semblerai que l'erreur se situe au niveau de: "DefaultVersion:=xlPivotTableVersion12_"
Et pour information j'utilise XL2007.
En espérant avoir été assez précis dans ma demande, j'éspére qu'une solution est possible!
merci à tous!
A+