OVH Cloud OVH Cloud

tableaux croisés dynamiques - en référence relative

2 réponses
Avatar
Bulle
Bonjour à chacun,

Je rencontre un souci qui va probablement être simple pour vous.

J'utilise l'enregistreur de macros pour créer un tableau croisé dynamique
récurent.
Cependant, les données servant à ce tableau contiennent plus ou moins de
lignes.

Voici le code de ma macro :

Sub TCD()
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Feuil1!R1C1:R533C8").CreatePivotTable TableDestination:="",
TableName:= _
"Tableau croisé dynamique2"
ActiveSheet.PivotTableWizard TableDestination:=ActiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveSheet.PivotTables("Tableau croisé dynamique2").SmallGrid = False
With ActiveSheet.PivotTables("Tableau croisé
dynamique2").PivotFields("FGFD")
.Orientation = xlDataField
.Position = 1
End With
End Sub

Finalement, j'aimerais que ce soit SourceData="Feuil1!R1C1:R533C8" qui
ressemble à quelque chose comme Select.Current.Region.

Y a-t-il une solution ?
J'avoue ne pas avoir pris le temps de tester en nommant la plage des
cellules.

Je serais super contente de lire une solution. Merci d'avance.

Liana :-)

2 réponses

Avatar
michdenis
Bonjour Bulle,

Sans avoir testé, essaie ceci :

Place ces lignes de codes au tout début de ta macro, en spécifiant bien le nom de la feuille de ton projet sur laquelle
se trouve ton TCD


Dim Adr As String
With Worksheets("feuil1")
Adr = .Name & "!" & .Range("A1").CurrentRegion.Address
End With

Et remplace dans ta première ligne de code :

SourceData:= "Feuil1!R1C1:R533C8") Par
SourceData:= Adr


Salutations!


"Bulle" a écrit dans le message de news:bj7qvf$3ac$
Bonjour à chacun,

Je rencontre un souci qui va probablement être simple pour vous.

J'utilise l'enregistreur de macros pour créer un tableau croisé dynamique
récurent.
Cependant, les données servant à ce tableau contiennent plus ou moins de
lignes.

Voici le code de ma macro :

Sub TCD()
ActiveWorkbook.PivotCaches.Add(SourceType:=xlDatabase, SourceData:= _
"Feuil1!R1C1:R533C8").CreatePivotTable TableDestination:="",
TableName:= _
"Tableau croisé dynamique2"
ActiveSheet.PivotTableWizard TableDestination:¬tiveSheet.Cells(3, 1)
ActiveSheet.Cells(3, 1).Select
ActiveSheet.PivotTables("Tableau croisé dynamique2").SmallGrid = False
With ActiveSheet.PivotTables("Tableau croisé
dynamique2").PivotFields("FGFD")
.Orientation = xlDataField
.Position = 1
End With
End Sub

Finalement, j'aimerais que ce soit SourceData="Feuil1!R1C1:R533C8" qui
ressemble à quelque chose comme Select.Current.Region.

Y a-t-il une solution ?
J'avoue ne pas avoir pris le temps de tester en nommant la plage des
cellules.

Je serais super contente de lire une solution. Merci d'avance.

Liana :-)
Avatar
michdenis
Bonsoir Daniel,

Bonjour Bulle,
1. Pour le prénom erroné: Ne t'en fais pas. L'auteur de cette erreur a subi

eu son lot de problèmes avec cela ces temps-ci. ;-))

Comme l'auteur publie sous son pseudonyme, je n'ai pas voulu faire preuve d'une singulière familiarité en l'interpellant
autrement que par le choix exprimé par de ce dernier ! ;-))

J'avoue cependant avoir un faire pour Liana ! ;-)


Salutations!