Help Macro Tableau croisé Dinamique !!

wsanchez Messages postés 1 Statut Membre -  
gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Il y a qq’un qui pourrait m’aider. J’arrive pas a faire un macro d’un tableau croisé dynamique en excel !!
Je dois vous avouer que j’apprend à utiliser les macros .. j’ai déjà fait un mais très simple.. voilà
Sinon par rapport la macro d’un TCD, j’ai eu le suivant message « Erreur d’exécution 5, argument ou appel de procédure incorrect »
Merci pour m’aide !!

Voici VB de la macro :

Sub Macro5()
'
' Macro5 Macro
'

'
Range("A1:A2").Select
Range(Selection, Selection.End(xlDown)).Select
Range(Selection, Selection.End(xlToRight)).Select
Sheets.Add
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Feuil1 (2)!A1:C6", Version:=xlPivotTableVersion12).CreatePivotTable _
TableDestination:="Feuil12!A1:C6", TableName:="Tableau croisé dynamique4", _
DefaultVersion:=xlPivotTableVersion13
Sheets("Feuil12").Select
Cells(3, 1).Select
With ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields("Base")
.Orientation = xlColumnField
.Position = 1
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields("Numero")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields( _
"Calificacion")
.Orientation = xlRowField
.Position = 2
End With
End Sub
Configuration: Windows 2007
Firefox 3.0.10

1 réponse

  1. gbinforme Messages postés 14930 Date d'inscription   Statut Contributeur Dernière intervention   4 744
     
    bonjour

    Je te propose de modifier ainsi ta macro pour tenir compte de ta sélection et éviter une erreur à la seconde exécution
    Sub Macro5()
    '
    ' Macro5 Macro
    '
    Range("A1:A2").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    On Error Resume Next
    Sheets.Add.Name = "Feuil12"
    ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
            Selection).CreatePivotTable TableDestination:= _
            "Feuil12!R3C1", TableName:="Tableau croisé dynamique4", _
            DefaultVersion:=xlPivotTableVersion10
    Sheets("Feuil12").Select
    With ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields("Base")
        .Orientation = xlColumnField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields("Numero")
        .Orientation = xlRowField
        .Position = 1
    End With
    With ActiveSheet.PivotTables("Tableau croisé dynamique4").PivotFields( _
    "Calificacion")
        .Orientation = xlRowField
        .Position = 2
    End With
    End Sub
    

    ps : J'aime bien la "Calificacion" que je découvre :)
    0