Création TCD erreur 1004 "Le nom du champ de tcd n'est pas valide"
Résolu
Baptiste_xls
Messages postés
15
Statut
Membre
-
yg_be Messages postés 24281 Statut Contributeur -
yg_be Messages postés 24281 Statut Contributeur -
Bonjour à tous,
Dans la création automatique d'un TCD sous VBA je rencontre une erreur.
Dans le code ci-dessous je crée un TCD vide :
Tout marche bien jusqu'à la dernière ligne en gras. Je rencontre une erreur qui me dit :
"Le nom du champ de tableau croisé dynamique n'est pas valide. Pour créer un rapport de tcd, vous devez utiliser des données sous forme de liste avec des étiquettes de colonnes... "
Je n'ai pas compris d'où provient l'erreur. En sachant que ma source de données commence en A3. (Peut-être changer le Cells de la variable plr et plc ? )
(pdsheet = feuille où il y la source de données
pvsheet = feuille qui accueille le TCD)
Si vous avez une idée, je vous en serais reconnaissant...
Baptiste
Dans la création automatique d'un TCD sous VBA je rencontre une erreur.
Dans le code ci-dessous je crée un TCD vide :
Sub PivotTable()
Dim pvtable As PivotTable
Dim pvcache As PivotCache
Dim pvrange As Range
Dim pvsheet As Worksheet
Dim pdsheet As Worksheet
Dim plr As Long
Dim plc As Long
On Error Resume Next
Application.DisplayAlerts = False
Application.ScreenUpdating = False
Worksheets("pvsheet").Delete
Worksheets.Add After:=ActiveSheet
ActiveSheet.Name = "pvsheet"
On Error GoTo 0
Set pvsheet = Worksheets("pvsheet")
Set pdsheet = Worksheets("pdsheet")
plr = pdsheet.Cells(Rows.Count, 1).End(xlUp).Row
plc = pdsheet.Cells(1, Columns.Count).End(xlToLeft).Column
Set pvrange = pdsheet.Cells(1, 3).Resize(plr, plc)
Set pvcache = ActiveWorkbook.PivotCaches.Create(xlDatabase, SourceData:=pvrange)
Set pvtable = pvcache.CreatePivotTable(TableDestination:=pvsheet.Cells(1, 1), TableName:="Nat10")
End Sub
Tout marche bien jusqu'à la dernière ligne en gras. Je rencontre une erreur qui me dit :
"Le nom du champ de tableau croisé dynamique n'est pas valide. Pour créer un rapport de tcd, vous devez utiliser des données sous forme de liste avec des étiquettes de colonnes... "
Je n'ai pas compris d'où provient l'erreur. En sachant que ma source de données commence en A3. (Peut-être changer le Cells de la variable plr et plc ? )
plr = pdsheet.Cells(Rows.Count, 1).End(xlUp).Row
plc = pdsheet.Cells(1, Columns.Count).End(xlToLeft).Column
(pdsheet = feuille où il y la source de données
pvsheet = feuille qui accueille le TCD)
Si vous avez une idée, je vous en serais reconnaissant...
Baptiste
A voir également:
- Le nom du champ de tableau croisé dynamique n'est pas valide
- Ethernet n'a pas de configuration ip valide - Guide
- Tableau croisé dynamique - Guide
- Exemple tableau croisé dynamique télécharger - Télécharger - Tableur
- Tableau word - Guide
- Nom de l'adresse c'est quoi ✓ - Forum Réseaux sociaux