Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Erreur 1002/enregistreur macros/TCD

alizee006

XLDnaute Nouveau
Erreur 1004/enregistreur macros/TCD

Bonjour,

Je souhaiterais créer une macro permettant d'automatiser des tableaux croisés dynamiques.
Le fichier contenant les données pour les TCD change (en fait un nouveau fichier de la même forme avec un nouveau nom toutes les semaines), mais il a toujours le même nombre de colonnes mais pas le même nombre de lignes, et les données de ce fichier changent également.
Je pensais donc enregistrer la macro dans le classeur de macros personnelles pour pouvoir l'utiliser à chaque fois que j'ai ce fichier à analyser de nouveau (et automatiser les 7 TCD).
J'ai voulu utiliser l'enregistreur de macros automatique d'Excel, jusque là pas de problèmes ! Mais ensuite quand j'exécute la macro enregistrée j'ai ce message d'erreur :
erreur 1004: impossible de lire la propriété pivotfields de la classe pivottable
Je ne comprend pas trop le problème, quelle est la solution ?
De plus, après réflexion si je crée une macro enregistrée basée sur un certain nombre de ligne du fichiers de données et qu'ensuite le nombre de lignes de ce fichier changent, je pense qu'il va y avoir forcément un problème ! Comment faire (comment corriger le code de la macro enregistrée !)
Je vous remercie de votre aide par avance !
 
Dernière édition:

cibleo

XLDnaute Impliqué
Re : Erreur 1002/enregistreur macros/TCD

Bonsoir alizee006,
Bienvenue sur le forum

Fais une recherche dans Google comme ceci :

site:excel-downloads.com 1004 +Pivotfields

Tu vas trouver une bonne dizaine de réponses à éplucher.

Pour ma part, je ne suis pas un spécialiste.

Amicalement cibleo
 

alizee006

XLDnaute Nouveau
Re : Erreur 1002/enregistreur macros/TCD

Je ne peux pas pour des raisons de confidentialité mettre les fichiers, d'autant plus qu'ils sont très lourds.
1 fichier avec une base de données qui est nouveau toutes les semaines et qui change (nombre de lignes notamment)
1 analyse à faire sur cette base de données, c'est à dire 8 tableaux croisés dynamique à faire à partir des différentes feuilles du fichier avec la base de données
Les TCD comporteront toujours les mêmes champs (Semaine, Type de produits, Montant total) (chaque feuille correspondant au statut du produit : produits reçus, à recevoir, en commande...).
Chaque TCD se fait sur une nouvelle feuille.
Le problème est que cette macro sera à chaque fois exécutée sur un nouveau fichier (de la même forme, même nombre de colonne, même nom de feuille, même en-tête de colonnes, mais nombre de ligne différent à chaque fois). Où enregistrer la macro ?
 

La braise

XLDnaute Occasionnel
Re : Erreur 1002/enregistreur macros/TCD

Bonjour Alizée,

Je travaille actuellemnt sur une macro similaire.

La solution -enfin celle que je suis en train de mettre en pratique - consiste à :

- analyser la base de données pour déterminer le nb de lignes du fichier (via par ex; NB_L = ActiveSheet.UsedRange.Rows.Count)

- créer une variable en range pour nommer cette plage variable (ex; Plage-TCD)

- utiliser le nom de cette plage dans la requête pour le TCD

Espérant que tout cela pourra t'aider!

 

klin89

XLDnaute Accro
Re : Erreur 1002/enregistreur macros/TCD

Bonjour à tous,
Bonjour alizee006,

Difficile de t'aider sans support d'analyse.

Si tu ne peux pas envoyer de fichier, envoies nous ta macro et indiques nous où se produit l'erreur.

Amicalement Klin89
 
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…