Résolu Tableau croisé dynamique

dianbobo

Expert
bonjour
'je voudrai faire un tableau croisé dynamique
'dont voici l'enregistreur de macro que j'ai dejà commencé a modifier
'mon tableau se trouve sur la feuille "feuil1" et mon tableau croisé dynamique lui je
'veux le mettre sur la feuille "param"
pour l'instant j'ai ajouté la ligne 3 et modifier la ligne 7
car c'est pas un tableau figé parce que les lignes peuvent etre ajoutées ou pas
[cpp]Sub tableau_croisé_d()
Dim k As Long
k = Worksheets("Feuil1").Cells(Rows.Count, 1).End(xlUp).Row
Range("A6").Select
Sheets.Add
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"Feuil1!L5C1:L" & (k) & "C16", Version:=xlPivotTableVersion10).CreatePivotTable _
TableDestination:="param!L5C1", TableName:="Tableau croisé dynamique7", _
DefaultVersion:=xlPivotTableVersion10
Sheets("param").Select
Cells(5, 1).Select
ActiveSheet.PivotTables("Tableau croisé dynamique7").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique7").PivotFields("ID"), "Somme de ID", _
xlSum
With ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotFields("ISIN")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotFields("Libellé" _
)
.Orientation = xlRowField
.Position = 2
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotFields("Rating")
.Orientation = xlRowField
.Position = 3
End With
End Sub[/cpp]
'

lorsque je lance le code avec F8 j'ai une erreur à la ligne 4 "erreur definie par l'application ou par l'objet"

merci de votre aide
 

zeb

Modérateur
Salut Dianbobo,

Je vois que tu n'as toujours rien appris des sujets précédents ! :pfff:
Lorsque l'on jongle avec plusieurs onglets, on précise l'onglet sur lequel on travaille, sans jamais faire confiance à l'objet (classeur, onglet, cellule) actif en cours.
 

dianbobo

Expert
Bonjour grand Maitre ZEB :bounce: , bonjour tout le monde
je vois j'ai rectifié l'erreur de la ligne 4

en remplaçant [cpp]Range("A6" ).Select [/cpp]
par
[cpp]Worksheets("Feuil1").Range("A6").Select[/cpp]
:)
du coup il n'y a plus d'erreur sur cette ligne

mais cette fois ci j'ai une erreur a la ligne 6, 7,8 et 9 "[cpp]argument ou appel de procedure incorrecte[/cpp]"

comment y remedier :??:

merci d'avance
 

dianbobo

Expert
Meilleure réponse
Ceci est une proposition de solution

[cpp]Sub tableau_croisé_d()
Dim k As Long
k = worksheets("Synthèse").Cells(Rows.Count, 1).End(xlUp).Row

ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
"'Synthèse'!R5C1:R" & k & "C16", Version:=xlPivotTableVersion10).CreatePivotTable _
TableDestination:="'Parametrage'!R5C1", TableName:="Tableau croisé dynamique7", _
DefaultVersion:=xlPivotTableVersion10
Sheets("Parametrage").Select
Cells(5, 1).Select
ActiveSheet.PivotTables("Tableau croisé dynamique7").AddDataField ActiveSheet. _
PivotTables("Tableau croisé dynamique7").PivotFields("ID"), "Somme de ID", _
xlSum
With ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotFields("ISIN")
.Orientation = xlRowField
.Position = 1
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotFields("Libellé" _
)
.Orientation = xlRowField
.Position = 2
End With
With ActiveSheet.PivotTables("Tableau croisé dynamique7").PivotFields("Rating")
.Orientation = xlRowField
.Position = 3
End With
End Sub[/cpp]

ça marche bien chez moi
 

zeb

Modérateur
Meilleure réponse sélectionnée par zeb.nnn(Ca reste du code pas beau :kaola: )n:D
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 132
Messages
6 718 040
Membres
1 586 389
Dernier membre
ROCKET8
Partager cette page
Haut