Macro pour choix dans TCD

Dugenou

XLDnaute Barbatruc
Bonsoir à tous,

J'espère que Dan et sa science des TCD viendront à mon secours, mais vous êtes tous les bienvenus.

J'ai une dizaine de TCD répartis sur 5 feuilles excel et comme j'ai la flemme de choisir la valeur champ de page à afficher (identique dans chaque TCD mais 60 valeurs différentes), je me suis fait une petite macro qui récupére la valeur d'une cellule et l'applique aux différents Tcd en utilisant la méthode Pivot table 'XX'.Field'YY'= ma valeur.
Le probleme est qu'il peut arriver que la valeur à afficher n'existe pas dans l'un des TCD. A ce moment là, je n'ai pas de message d'erreur, et la valeur (du champ page)affichée précédemment est remplacée par la valeur (du champ page) recherchée : et du coup, mes résultats sont faux.
Je voudrais savoir s'il existe une commande ou un complément de commande qui permette d'éviter ce probleme.

Si ces explications ne sont pas claires, je pourrais vous joindre un petit bout de fichier avec la macro.

Merci d'avance pour votre aide précieuse.
 

Dugenou

XLDnaute Barbatruc
Pas de prob pour l'incruste : c'est à ça qu'il sert le forum !
je répondrais à tes question dans la mesure de mes moyens.
Les trois quarts des bugs que j'ai rencontrés sont liés au fait que le TCD change de nom quand tu en colles ou fait un nouveau. Il faut soit adapter l'ancien TCD soit renommer le tcd (TCD/option de la table) : pour ma part j'écrit le nom utilisé à coté du TCD pour simplifier les vérifications.

Cordialement [file name=macroTCD.zip size=4732]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/macroTCD.zip[/file]

Message édité par: Dugenou, à: 16/03/2006 16:49
 

Pièces jointes

  • macroTCD.zip
    4.6 KB · Affichages: 63

Dugenou

XLDnaute Barbatruc
Oui, comme je le disais, le fichier a été vidé de ses données, mais il y a dans visual basic un module avec les deux macros que j'utilise.

Ton fichier n'est pas passé, il faut le zipper avant de le joindre (voir le tutoriel)et le nom ne dois pas contenir d'espaces ou d'accents

je te joins un fichier avec une image des feuilles mais sans aucune donnée

Edition : ben fait je l'ai pas dit (j'ai du seulement le penser) :les données concernent les ventes de ma société et, à ce titre, sont considérées comme confidentielles.
Désolé, je pensais que la macro suffirait.

cordialement [file name=macrotcd2.zip size=18971]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/macrotcd2.zip[/file]

Message édité par: Dugenou, à: 20/03/2006 00:21
 

Pièces jointes

  • macrotcd2.zip
    18.5 KB · Affichages: 60

jeffe

XLDnaute Impliqué
Sorry le fichier est pas parti, le voila [file name=MaJTCD.zip size=12931]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/MaJTCD.zip[/file]
bonne jounée à tous.
 

Pièces jointes

  • MaJTCD.zip
    9.4 KB · Affichages: 31
  • MaJTCD.zip
    9.4 KB · Affichages: 26
  • MaJTCD.zip
    9.4 KB · Affichages: 26

Dan

XLDnaute Barbatruc
Bonjour,

:sick: Dugenou, heu j'ai rien compris à ce que tu veux réellement faire car dans ton fichier il n'y a pas d'explication et surtout trsè important je n'ai aucune données et les TCD comme tu le dis ne fonctionnent pas.

Jeffe, tu as placé un fichier pour Dugenou ou parce que tu as un pb ? Car au vu de ton post j'ai l'impression que tu attends quelque chose. Ce sujet à été traité aussi quelques fois sur ce forum mais je ne suis pas sûr que c'est ce que Dugenou veut faire.

Dans l'attente de vos infos

;)
 

jeffe

XLDnaute Impliqué
Bonjour le forum, dan.Effectivement en regardant le fichier de dugenou, cela ne corespond pas tout à fait à mon besoin.
Dans mon fichier joint, j'ai un cobobox qui me permet de selectionner le champs et de le mettre à jour sur tous les tableaux .Mais ça ne fonctionne pas et je trouve pas pourquoi.
Si tu as une idee merci.
 

Dan

XLDnaute Barbatruc
Re,

Jeffe explique moi ce qui ne fonctionne pas car moi je n'ai aucun pb.

Tu n'avais pas besoin de faire une combo car une simple liste déroulante avec les noms Nuit, Jour, ... te suffisait.
Ce soir j'essairai de retrouver le lien dans lequel j'avais traité ce sujet avec différentes possibilités dont notamment une de se servir du premier TCD pour actualiser les autres via le champ de page.

A te lire.

;)
 

jeffe

XLDnaute Impliqué
Re, j'itilise la combo pour declancher la macro
je sais pas faire a partir de le liste de validation.
Pour ce qu'il ne fonctionne pas, si je selectionne Matin OK, selection Nuit OK, selection Matin KO et je vois pas pourquoi.
merci de ton interret. :)
 

Dan

XLDnaute Barbatruc
Re,

Jeffe, bon je te propose ceci,

J'ai créé une feuille 3, avec les deux même TCD et une macro qui si tu sélectionnes la cellule B1 du premier TCD en haut à gauche, va te mettre le deuxième TCD à jour avec la donnée choisie.
La feuille 1 peut être supprimée.

La macro est placée dans ton fichier en VBA feuille2.

Solution que j'avais proposée dans un fil similaire que tu peux lire en cliquant sur ce lien -> Lien supprimé

Si pb n'hésite pas

;)

Edition : suppression du fichier suite à problème à l'ouverture. Le fichier est reposté en date du 20/03/06.

Message édité par: Dan, à: 20/03/2006 09:17
 

Pièces jointes

  • MaJTCD_V02.zip
    14.6 KB · Affichages: 41

Dugenou

XLDnaute Barbatruc
Salut Dan,

merci de t'occuper de mon cas.

J'ai une erreur à chaque fois que j'ouvre ton dernier fichier joint : impossible de l'ouvrir completement, mais pas grave.
Je suis allé sur le fil que tu cites et j'ai compris ce que tu fais dans celui la : on utilise le champ page du premier TCD pour commander les autres.
Je fais quelquechose de similaire sauf que je ne pars pas d'un TCD mais d'une valeur stockée dans une cellule. Mon probleme est que les TCD ont des données différentes et donc parfois une des valeurs du champ de page est absente.
Quand la macro fait Pivot_table('X').pivot_field('Y').currentpage=la cellule et que la valeur contenue dans la cellule est absente de la liste du champ de page : on écrase la valeur actuelle du champ de page (par exemple 'secteur 15') avec la valeur contenue dans la cellule (par ex 'secteur 17'). (Exactement comme quand tu tapes du texte dans le champ de page : tu remplace ce qui y était mais il y a un message d'avertissement)
Ma question est donc : y a t il une option dans la commande pivot field('X')=la cellule qui permette de dire : ne pas remplacer l'ancienne valeur ?

Si ce n'est toujours pas clair : je te ferais un petit bout de fichier.

Cordialement

Edition : voici le bout de fichier promis

Message édité par: Dugenou, à: 19/03/2006 20:21
 

Dan

XLDnaute Barbatruc
Bonsoir,

Tiens effectivement il y a un pb sur le fichier que j'ai posté pour Jeffe mais avec l'explication du lien je pense que Jeffe peut comprendre.
Je replacerai ce fichier demain.

Dugenou, j'ai compris ton pb mais en voyant ta feuille 'données', ne peux-tu pas placer toutes tes données ensemble en créant une colonne GroupeTCD1, TCD2... et faire 1 TCD à partir de cela plutôt que d'en créer trois ?

Avantage : tu n'as plus besoin de liste déroulante en D14 et tu peux trouver ce qu'il te faut par le champ de page dans l'unique TCD.
A te lire

;)

Message édité par: Dan, à: 19/03/2006 21:29
 

Discussions similaires

Statistiques des forums

Discussions
312 330
Messages
2 087 351
Membres
103 526
dernier inscrit
HEC