Excel2002: Erreur 1004 à la construction d'un tableau croisé dyn am
12 réponses
redqueen
Bonjour!
J'ai un souci...
J'ai eu à convertir et à faire évoluer une appli acces97 vers 2002. Cette
appli alimente un fichier excel avec des données brutes : à l’ouverture du
fichier excel, un tableau croisé dynamique se construit avec les données
brutes
Tout fonctionnait sur l'ancienne version d’excel (excel 7 je crois)...je
suis en excel 2002 aujourd’hui.
Voici le morceau de code :
ActiveWorkbook.Sheets(NouvelOnglet).PivotTableWizard SourceType:=xlDatabase,
SourceData:= _
"Fac29Export!C1:C22", TableDestination:="R1C1:R7C1", TableName:= _
"Tableau croisé dynamique1"
With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé
dynamique1").PivotFields("DR")
End With
With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé
dynamique1").PivotFields("Grpe")
.Name = "Groupe"
End With
-> erreur 1004: impossible de lire la propriété pivotfields de la classe
pivotable (sur .name = "Groupe")
j'ai essayé...rien n'y fait, ça plante également... merci!
Bonsour® redqueen ;o)) essaie en remplacant ..Name = "Groupe" par ..Caption= "Groupe"
;-p (isabelle) @+
bonjour redqueen, essaie en remplacant ..Name = "Groupe" par ..CurrentPage = "Groupe" isabelle
redqueen
Bonjour Isabelle,
la macro a été envoyée au support de microsoft Je ne pourrai tester leur solution que ce soir mais leur explication a l'air très logique et plausible (et puis elle fonctionne chez eux ;-)) Ils me disent de rajouter Application ScreenUpdating True pour rafraichir la feuille après la construction du tableau. Je te dirai ce qu'il en est. Je te remercie de m'avoir répondu et d'avoir cherché pour moi
re bonjour redqueen,
fait un click droit sur une des celules du tcd et sélectionne "Assitant" click sur le bouton "Disposition" là tu voie des boutons à droite, ce sont les noms des champs de la table source du tcd. à gauche tu as 4 possibilités pour la disposition de ces champs, c'est à dire, de faire glisser chaque champ de la table source dans une des 4 cases: champ de page champ de ligne champ de colonne champ de données
dans lequel, "groupe" a t'il été mit ?
isabelle
re bonjour Isabelle!
Je ne suis pas certaine de bien comprendre ta question...et puis je n'y connais absolument rien en excel. Excuse donc mes descriptions qui ne sont ni claires et certainement pas très correctes "Groupe" est un libellé: la cellule 2 de la colonne A du tableau "tableau croise dynamique1" de la feuille 1. La cellule 2 de la colonne B est une liste qui contient toutes les valeurs de groupes présentes dans la colonne "Grpe" de la feuille de données envoyées par access. Je suis désolée de ne pouvoir te dire que cela (ce que je vois et ce que je crois comprendre). A bientôt
re bonjour redqueen,
"groupe" fait t'il parti d'un champ de page, de ligne ou de colonne ?
isabelle
je veux sélectionner la ligne du tableau croisé qui s'appelle "Groupe" et le lier avec la colonne "Grpe" de la feuille de données brutes (Fac29Export)... Merci de m'aider, c'est vraiment sympa Je suis au bureau et je ne peux rien tester d'ici (je suis sous windows 98): il faut que j'attende de rentrer chez moi pour regarder tout cela. Je ne sais pas si je peux joindre le fichier, est-ce possible sur ce site?
re bonjour redqueen,
avec commande
With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé dynamique1").PivotFields("Grpe") ..Name = "Groupe" End With
veux tu sélectionner l'item champ de page "groupe", ou renommer un champ ?
isabelle
bonjour Isabelle, ça ne change rien....j'ai exactement le même message d'erreur... Merci pour ton aide. j'inonde les forums depuis plusieurs jours et personne ne répond!
bonjour redqueen,
essaie en remplacant
..Name = "Groupe" par ..CurrentPage = "Groupe"
isabelle
Bonjour!
J'ai un souci... J'ai eu à convertir et à faire évoluer une appli acces97 vers 2002. Cette appli alimente un fichier excel avec des données brutes : à l’ouverture du fichier excel, un tableau croisé dynamique se construit avec les données brutes
Tout fonctionnait sur l'ancienne version d’excel (excel 7 je crois)...je suis en excel 2002 aujourd’hui.
Voici le morceau de code :
ActiveWorkbook.Sheets(NouvelOnglet).PivotTableWizard SourceType:=xlDatabase, SourceData:= _ "Fac29Export!C1:C22", TableDestination:="R1C1:R7C1", TableName:= _ "Tableau croisé dynamique1" With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé dynamique1").PivotFields("DR") End With With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé dynamique1").PivotFields("Grpe") .Name = "Groupe" End With
-> erreur 1004: impossible de lire la propriété pivotfields de la classe pivotable (sur .name = "Groupe")
Bonjour Isabelle,
la macro a été envoyée au support de microsoft
Je ne pourrai tester leur solution que ce soir mais leur explication a l'air
très logique et plausible (et puis elle fonctionne chez eux ;-))
Ils me disent de rajouter Application ScreenUpdating True pour rafraichir la
feuille après la construction du tableau.
Je te dirai ce qu'il en est.
Je te remercie de m'avoir répondu et d'avoir cherché pour moi
re bonjour redqueen,
fait un click droit sur une des celules du tcd et sélectionne "Assitant"
click sur le bouton "Disposition"
là tu voie des boutons à droite, ce sont les noms des champs de la table
source du tcd.
à gauche tu as 4 possibilités pour la disposition de ces champs, c'est à
dire, de faire glisser chaque champ de la table source dans une des 4 cases:
champ de page
champ de ligne
champ de colonne
champ de données
dans lequel, "groupe" a t'il été mit ?
isabelle
re bonjour Isabelle!
Je ne suis pas certaine de bien comprendre ta question...et puis je n'y
connais absolument rien en excel. Excuse donc mes descriptions qui ne sont ni
claires et certainement pas très correctes
"Groupe" est un libellé: la cellule 2 de la colonne A du tableau "tableau
croise dynamique1" de la feuille 1. La cellule 2 de la colonne B est une
liste qui contient toutes les valeurs de groupes présentes dans la colonne
"Grpe" de la feuille de données envoyées par access.
Je suis désolée de ne pouvoir te dire que cela (ce que je vois et ce que je
crois comprendre).
A bientôt
re bonjour redqueen,
"groupe" fait t'il parti d'un champ de page, de ligne ou de colonne ?
isabelle
je veux sélectionner la ligne du tableau croisé qui s'appelle "Groupe" et le
lier avec la colonne "Grpe" de la feuille de données brutes (Fac29Export)...
Merci de m'aider, c'est vraiment sympa
Je suis au bureau et je ne peux rien tester d'ici (je suis sous windows 98):
il faut que j'attende de rentrer chez moi pour regarder tout cela.
Je ne sais pas si je peux joindre le fichier, est-ce possible sur ce site?
re bonjour redqueen,
avec commande
With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé
dynamique1").PivotFields("Grpe")
..Name = "Groupe"
End With
veux tu sélectionner l'item champ de page "groupe", ou renommer un champ ?
isabelle
bonjour Isabelle,
ça ne change rien....j'ai exactement le même message d'erreur...
Merci pour ton aide. j'inonde les forums depuis plusieurs jours et personne
ne répond!
bonjour redqueen,
essaie en remplacant
..Name = "Groupe"
par
..CurrentPage = "Groupe"
isabelle
Bonjour!
J'ai un souci...
J'ai eu à convertir et à faire évoluer une appli acces97 vers 2002. Cette
appli alimente un fichier excel avec des données brutes : à l’ouverture du
fichier excel, un tableau croisé dynamique se construit avec les données
brutes
Tout fonctionnait sur l'ancienne version d’excel (excel 7 je crois)...je
suis en excel 2002 aujourd’hui.
Voici le morceau de code :
ActiveWorkbook.Sheets(NouvelOnglet).PivotTableWizard SourceType:=xlDatabase,
SourceData:= _
"Fac29Export!C1:C22", TableDestination:="R1C1:R7C1", TableName:= _
"Tableau croisé dynamique1"
With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé
dynamique1").PivotFields("DR")
End With
With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé
dynamique1").PivotFields("Grpe")
.Name = "Groupe"
End With
-> erreur 1004: impossible de lire la propriété pivotfields de la classe
pivotable (sur .name = "Groupe")
la macro a été envoyée au support de microsoft Je ne pourrai tester leur solution que ce soir mais leur explication a l'air très logique et plausible (et puis elle fonctionne chez eux ;-)) Ils me disent de rajouter Application ScreenUpdating True pour rafraichir la feuille après la construction du tableau. Je te dirai ce qu'il en est. Je te remercie de m'avoir répondu et d'avoir cherché pour moi
re bonjour redqueen,
fait un click droit sur une des celules du tcd et sélectionne "Assitant" click sur le bouton "Disposition" là tu voie des boutons à droite, ce sont les noms des champs de la table source du tcd. à gauche tu as 4 possibilités pour la disposition de ces champs, c'est à dire, de faire glisser chaque champ de la table source dans une des 4 cases: champ de page champ de ligne champ de colonne champ de données
dans lequel, "groupe" a t'il été mit ?
isabelle
re bonjour Isabelle!
Je ne suis pas certaine de bien comprendre ta question...et puis je n'y connais absolument rien en excel. Excuse donc mes descriptions qui ne sont ni claires et certainement pas très correctes "Groupe" est un libellé: la cellule 2 de la colonne A du tableau "tableau croise dynamique1" de la feuille 1. La cellule 2 de la colonne B est une liste qui contient toutes les valeurs de groupes présentes dans la colonne "Grpe" de la feuille de données envoyées par access. Je suis désolée de ne pouvoir te dire que cela (ce que je vois et ce que je crois comprendre). A bientôt
re bonjour redqueen,
"groupe" fait t'il parti d'un champ de page, de ligne ou de colonne ?
isabelle
je veux sélectionner la ligne du tableau croisé qui s'appelle "Groupe" et le lier avec la colonne "Grpe" de la feuille de données brutes (Fac29Export)... Merci de m'aider, c'est vraiment sympa Je suis au bureau et je ne peux rien tester d'ici (je suis sous windows 98): il faut que j'attende de rentrer chez moi pour regarder tout cela. Je ne sais pas si je peux joindre le fichier, est-ce possible sur ce site?
re bonjour redqueen,
avec commande
With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé dynamique1").PivotFields("Grpe") ..Name = "Groupe" End With
veux tu sélectionner l'item champ de page "groupe", ou renommer un champ ?
isabelle
bonjour Isabelle, ça ne change rien....j'ai exactement le même message d'erreur... Merci pour ton aide. j'inonde les forums depuis plusieurs jours et personne ne répond!
bonjour redqueen,
essaie en remplacant
..Name = "Groupe" par ..CurrentPage = "Groupe"
isabelle
Bonjour!
J'ai un souci... J'ai eu à convertir et à faire évoluer une appli acces97 vers 2002. Cette appli alimente un fichier excel avec des données brutes : à l’ouverture du fichier excel, un tableau croisé dynamique se construit avec les données brutes
Tout fonctionnait sur l'ancienne version d’excel (excel 7 je crois)...je suis en excel 2002 aujourd’hui.
Voici le morceau de code :
ActiveWorkbook.Sheets(NouvelOnglet).PivotTableWizard SourceType:=xlDatabase, SourceData:= _ "Fac29Export!C1:C22", TableDestination:="R1C1:R7C1", TableName:= _ "Tableau croisé dynamique1" With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé dynamique1").PivotFields("DR") End With With ActiveWorkbook.Sheets(NouvelOnglet).PivotTables("Tableau croisé dynamique1").PivotFields("Grpe") .Name = "Groupe" End With
-> erreur 1004: impossible de lire la propriété pivotfields de la classe pivotable (sur .name = "Groupe")