SOS pour un TCD

niki42

XLDnaute Occasionnel
Salut

J'ai encore besoin d'aide...
Voilà je veux faire un TCD à partir d'une BDD nommée FDG LR. Comme j'aurais des données à rajouter, j'ai utilisé une formule avec =DECALER mais mais je n'arrive aps à construire mon tcd car le nom du champ dynamique n'est pas valide.

Je joins mon fichier ce sera plus facile.

Merci

Niki

:S [file name=cores.zip size=20042]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/cores.zip[/file]
 

Pièces jointes

  • cores.zip
    19.6 KB · Affichages: 23

Dugenou

XLDnaute Barbatruc
Bonjour Niki42,

On dirais bien que tu es amateur de macros ;) , pour ma part j'aurais tout fait en formules !

Pour le TCD je te donne donc un solution sans macro :(

tu étends la zone de données du TCD à l'ensemble de ton tableau et tu masques les valeurs dates vides et voilà !

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

Pièces jointes

  • cores niki42_20050406183322.zip
    19 KB · Affichages: 23

pat1545.

XLDnaute Accro
Salut,

plusieurs soluces en voilà 2:

tu va dans l'assistant et tu mets une zone plus grande à ton tableau de base et les nouvelles données seront dans le tcd (masquer les vides)

ou alors tu inséres tes donnés plus haut que la dernières ligne que tu avais au moment de la création du tcd et plus tu tries (si tu peux) et là aussi le tcd sera au 'parfum' mais en réactualisant bien sur


Patrick
 

niki42

XLDnaute Occasionnel
Resalut à tous

Je vous remercie pour vos réponses. Il est vrai que je me suis pris de passion pour Excel et les macros, et venir sur ce site régulièrement m'a beaucoup apporté car non seulement on nous aide nous pauvres débutants, mais en plus on discute avec des gens sympas et qui aiment rendre service, ce qui n'est pas tous les jours le cas.

B)

Mais revenons à nos moutons. Je vais insister mais je voudrais définir mon TCD avec la fonction DECALER. Je l'ai déjà fait et je sais que ça marche bien mais pas avec ce tableau. Il me dit:le nom du champs du TCD n'est pas valide et là franchement je ne comprends pas pourquoi.

Alors j'espère que les filles spécialistes du TCD viendront à mon secours

Merci

Niki
 

Celeda

XLDnaute Barbatruc
Bonsoir,

Avec cette formule placée dans insertion noms, ton tcd se réalise tout seul :

soit le nom Tablo et dans la barre de formule :

OFFSET($A$1;;;COUNTA($A$1:$A$2000);COUNTA($A$1:$X$1))
DECALER($A$1;;;NBVAL($A$1:$A$2000);NBVAL($A$1:$X$1))

il faut naturellement qu'il y ait toujours des etiquettes de données dans la ligne A, parce que si le TCD détecte la moindre anomalie, soit un seul manquement d'étiquette, flopppp :( , il te dit que les champs du tcd ne sont pas valides: attention aux étiquettes!!!! ;)


Celeda
 

chris

XLDnaute Barbatruc
Bonjour
Tu as peut être oublié de mettre le signe égal devant le nom de la source en construisant le TCD.
C'est le genre de gag qui m'arrive parfois depuis que j'ai adapoté le DECALER de Celeda que je salue chaleureusement au passage.
:)
 

niki42

XLDnaute Occasionnel
Salut Celeda

J'attendais un peu ton intervention.
Pour mon tableau, il y a bien des étiquettes de données et j'ai bien utilisé la formule DECALER.
En fait je pense avoir trouver le problème: J'avais un trou entre ma base de données et une petite liste que j'avais à côté avec des correspondances tranches et prix. Je l'ai déplacé et j'ai pu faire mon TCD.

Par contre quelle différence y a t'il entre ces 2 formules DECALER
DECALER($A$1;;;NBVAL($A$1:$A$2000);NBVAL($A$1:$X$1))


=DECALER('FDG LR'!$A$1;;;NBVAL('FDG LR'!$A$1:$A$2000);NBVAL('FDG LR'!$A$1:$X$1))

D'autre part je ne connaissais pas OFFSET peux-tu m'en dire un peu plus?

Encore une dernière question: je ne suis pas très à l'aise avec certaines formules comme DECALER INDEX EQUIV ....Sais-tu où je pourrais trouver quelques explications


Excusez moi pour le post un peu long

Merci

Niki :(
 

Dugenou

XLDnaute Barbatruc
Niki,


hihihi : OFFSET c'est DECALER en anglais

pour index equiv et tout ça : tu recherches tous les posts de Monique et tu lis : c'est super instructif !

Sans rire maintenant : Index(plage, N° de ligne, N° de colonne) te renvoie la valeur de la cellule au croisement du N° de ligne et de colonne : mais oui !

et equiv(valeur; plage) : te renvoie le N° dans la plage de la valeur charchée.

en combinant index (plage; equiv(valeur; autreplage)); N° colonne) tu peux renvoyer une valeur sur la même ligne que la valeur cherchée. Un genre de recherchev qui marche dans tous les sens.

Cordialement
 

Celeda

XLDnaute Barbatruc
Bonsoir,

Je suis contente de voir que tu as vu la même chose que moi. :)

Pour les formules : celle que tu avais placée dans ton fichier de départ :

OFFSET('FDG LR'!$A$1;0;'FDG LR'!$H$160;COUNTA('FDG LR'!$A:$A);COUNTA('FDG LR'!$1:$1))


et l'autre que je t'ai placée :
DECALER($A$1;;;NBVAL($A$1:$A$2000);NBVAL($A$1:$X$1))


* 1 - alors je tente une explicaition et que les puristes des fonctions ne s'esclaffent pas !! (attention je vous ai à l'oeil) :

on décale à partir de A1 (d'où l'importance de l'étiquette) - decaler va nous permettre avec ce point de départ de référence : A1, de définir une plage

ensuite les autres arguments (dont ici je ne remplis pas pour me servir uniquement du départ de la cellule) sont : Lignes;Colonnes;Hauteur;Largeur

puis on compte le nombre de valeurs sur la ligne définie de A1 à X1 pour permettre d'ajouter un nombre d'etiquettes suivant le besoin et idem pour le nombre de lignes ici on a mis 2000.

et tout cela je l'ai compris à force de me cogner le nez dessus!!

* rendre à Cesar ce qui appartient à César :

Je ne sais plus où j'ai attrapé cette fonction et je pense que je l'ai lue la première fois sur un forum anglophone, il y a un certain temps et que c'est une grande dame des TCDs anglophone qui l'avait placée. Depuis, elle a été reprise (la formule) par d'autres personnes et j'en ai vu d'autres versions.

Et pour citer aussi Chris qui m'a fait connaître la fonction Indirect :
INDIRECT('A1:Z'&COUNTA(BD!D:D)) qui fonctionne aussi parfaitement.


* 3 Pour Offset, c'est la version anglaise de Decaler(désolée, mais je travaille excel en anglais et parfois j'oublie quand je fais un copier coller des formules via excel via forum)

* 4 Pour Index -Equiv - ce sont de merveilleuses fonctions de recherche. Pour les découvrir, tu peux te retourner sur l'aide excel, ou bien lire quelques tutoriaux sur le net et/ou récupérer des fichiers dans la centrale ou dans le forum. Mais le plus difficile avec ces deux là, ce n'est pas tant de les comprendre, c'est de les utiliser lors d'imbrications de plusieurs autres formules alors que Decaler utilisé par exemple avec la fonciton Somme se comprend mieux. SUrtout je crois, c'est comme tout le reste, il faut pratiquer et s'exercer sans arrêt quitte à se ramasser.

Sorry pour la longueur mais il me reste une petite ligne pour Chris
grosses bises

Celeda
:)
 

Statistiques des forums

Discussions
313 060
Messages
2 094 926
Membres
106 128
dernier inscrit
lopierre