Re
je coince dans une table dynamique mais je pense qu'on s'en passe, sans
avoir à ajouter de colonnes...
Quelques pistes... Et une solution sans tables dynamiques (voir à la
fin)
résumé : c'est bon les tables dynamiques, oubliez-les (parfois !)
=> Sur la source de données (confère à l'autre discussion en cours
depuis qq jours sur le choix du bon outil, et je dirais même dans
l'outil, de la bonne méthode) :
Je ne crois pas qu'il soit judicieux, de mélanger dans la même feuille,
l'extraction de la source, et des calculs supplémentaires. surtout si
l'actualisation est automatique, mais même si c'est manuel. 2-3 réponses
à ça
Si ton extraction (que tu dis modifier) est donc personnalisable, c'est
via l'outil qui te permet de faire les extractions que tu dois faire
l'essentiel des calculs, des manipulations, ajouter de nouvelles
colonnes (issues éventuellement de calculs). Il faut toujours quand on
manipulent des données "volumineuses" réserver la manipulation, le
traitement de la donnée, à l'outil qui est fait pour. Dans Calc, tu dois
réserver le calcul final, ultime.
Tu pourrais aussi, car il semble que c'est ton nombre de colonnes qui
t'encombre l'esprit, selon ton besoin, concevoir une extraction
différente à chaque type d'analyse.
Enfin, voire surtout, j'aurais tendance, pour éviter de tout refaire à
chaque fois, de mettre en place un fichier où les calculs restent
valables malgré le nombre de valeurs croissantes. (bien sur tes colonnes
doivent être stabilisées). Ainsi, tu pourrais avoir une feuille
"source", et une autre, où les valeurs sont copiées (avec liaison), qui
ne prend que les colonnes utiles, si tu n'as qu'une source, et
auxquelles tu ajoutes tes calculs. Là encore, isole les thèmes dans des
feuilles différentes. Si tout est issu de la même source, quand tu
changes d'axe d'analyse, c'est pertinent d'avoir une feuille différente.
=> La solution la plus simple, que l'on va toujours recommander, celle
qui est naturelle, pas prise de tête :
De là, tu pourrais "accepter" (je n'aime pas du tout ce terme...) 2
colonnes supplémentaires mois(date en C) et annee(date en C), oui car en
réalité, à moins que tu veuilles cumuler janvier de 2022 et 2023, il te
faut l'année aussi. C'est ce que plusieurs préconisent. Et c'est juste
car c'est franchement simple d'obtenir ce qu'il te faut ensuite. Reste à
gérer ce qui te dérange dans cette pratique (d'où ce qui précède)
=> Les sous totaux dans la table dynamique
Si ton champ est en ligne par exemple, tu doubles cliques sur le champ,
et tu peux faire un sous total (oui au fait le sous total, c'est pas
toujours une somme, voir pour cela, la doc de la fonction sous.total)
Sauf que comme tu es sur une date, il n'y a pas de sous total apparent,
donc on oublie (mais au moins, une prochaine fois, dans d'autres cas...)
=> Il existe une solution manuelle, mais qui devra être refaite à chaque
fois que la table dynamique est actualisée:
Grouper les valeurs d'un même mois (sélectionner dans la table, puis
données grouper, renommer le groupe...)
C'est quelque chose d'assez utilisé, mais là encore dans ton cas, c'est
très empirique, et peu satisfaisant...
Il y aurait probablement une solution dans Excel
oui en toute honnêteté... Il y a un peu moins de 10 ans, quand au boulot
on travaillait sur le passage à LibreOffice, on m'a parlé des champs
calculés des TCD dans Excel. Cela permet de créer des champs de tables
supplémentaires par exemple un mois(date). Mais des choses bien plus
complexes aussi...
De là ce serait tout bête.
C'était tellement important qu'on a été à 2 doigts de financer le dév de
la fonction dans LibreOffice 25000EUR en devis initial, puis devis monté
à 50000EUR. On n'est pas allés au bout, car quand même c'est bien aussi
d'utiliser des outils spécialisés, qui sont déjà disponibles (confère
plus haut).
Mais il existe une fonction un peu intermédiaire qui ne répond pas à
toutes les situations...
Extraire données pilote
La doc de l'aide ne donne pas d'exemple, du coup c'est abscon... La page
FR du wiki est plus claire
https://wiki.documentfoundation.org/FR/Calc:_fonction_EXTRAIRE.DONNEES.PILOTE
Selon le besoin, il y a 2 syntaxes différentes. Quand on manipule déjà
le somme.si.ens, ça doit être moins dur d'accès (parce qu'en formation
c'est pas le moment le plus zen de la journée....)
Je coince, principalement parce qu'on est sur une date. J'arrive à
récupérer le total des entretiens, l'entretien d'un jour (avec en
critère la date en nombre, et non pas saisie comme une date, passer par
la valeur dans une cellule).
Ce qui serait idéal serait d'avoir dans un tableau les dates du premier
jour du mois, et de demander le cumul des entretiens pour les dates
comprises dans l'intervalle. En cherchant les valeurs dans la table
dynamique, je trouve pas. Mais ceci dit, à bien y réfléchir, je ne vois
pas pourquoi passer par une table dynamique pour ça...
un somme.si.ens ? non un sommeprod !
Pour que le somme.si.ens fonctionne il faudrait que le mois et l'année
de la date soient déjà dispo... on revient à la même question qu'avec
une table dynamique :-( Ou alors, on part des dates du 1er jour du mois
(principe évoqué plus haut)
Mais on pense moins à....
SommeProd, fonction magique (un peu compliquée aussi à présenter en
formation, mais plus simple que extraire données pilotes quand même)
Comme il y a de nombreux usages détournés de cette fonction, il faut
ensuite une petite gymnastique d'esprit. Mais en comparaison avec le
somme si ens, dans le cas de cet usage, on met les critères en premiers,
la plage à additionner en dernier.
Beaucoup ont l'habitude d'utiliser un index(equiv) à la place. Il a
moins de limitation, mais je préfère le sommeprod quand il peut
fonctionner...
Pour la somme des lignes non vides (par mois)
estvide, esttexte, nbval, le souci c'est bien qu'on les veut par mois...
et le nb.si.ens coince aussi... Mais puisque sommeprod a déjà
fonctionné, rien ne l'arrête...
on peut automatiquement construire une colonne dans sommeprod, le
résultat de esttexte pour chaque ligne, et, de là...
https://lufi.ethibox.fr/r/tuxwH_qunP#n2IOxV2+6YYrmvm2pGsNDJIHQrLFpQDKjDlv6gpeTyg=
Donc, si on oublie les tables dynamiques, on s'en sort mieux... si on
veut bien mettre des colonnes en plus, et pérenniser notre fichier, on
peut faire des tables dynamiques qu'il n'y aurait qu'à actualiser à
chaque nouvelle extraction...
Bonne nuit !
Claire
Le 2023-06-04 23:15, Martine Chazelas a écrit :
Oui c'est vrai mais ce tableau n'arrête pas d'être modifié et comme il
est alimenté par une extraction automatique à chaque fois que je
rajoute une colonne il me faut changer le format d'extraction mais bon
oui c'est faisable.
Je ne sais pas faire des sous totaux dans une table dynamique.
Je joins un fichier quasi vide mais avec quelques lignes et les
colonnes qui me sont utiles. J'ai besoin d'avoir par mois le nombre
d'inscrits (1) dans la colonne AI en fonction de la date inscrite dans
la colonne C et toujours par mois le nombre de lignes non vides dans la
colonne AJ selon la même date.
En plus de la difficulté sur le total par mois j'ai du mal à compter le
nombre de ligne non vides. Je crois qu'il faut utiliser la formule
=".*" mais cela ne donne aucun résultat dans une formule NB.SI.ENS. Je
me trompe quelque part mais je ne vois pas.
=NB.SI.ENS($'liste_entretiens'.AJ$2:$'liste_entretiens'.AJ$1000;"=.*";$'liste_entretiens'.C$2:$'liste_entretiens'.C$1000;">=1/09/2021";$'liste_entretiens'.C$2:$'liste_entretiens'.C$1000;"<=30/09/2021")
merci d'avance
Martine
J'ai lié un fichier à ce message :
* test_.ods [1]
Taille : 23,8 Ko
Service Filelink : *cloud
Lien : https://cloud.retzien.fr/index.php/s/KjJqY6CYcak3PzA/download
Le 04/06/2023 à 21:23, Ocleyr2lalune a écrit :
Bonjour Martine
Ce n'est pas une colonne de plus qui changera grand chose si tu en as
déjà une trentaine. De toute façon tu manipules ça avec une table
dynamique...
Un sous total dans la table dynamique tu as essayé ? (La colonne
supplémentaire c'est pour simple).
Sinon un extrait de ton fichier ça aiderait à tester si tu peux...
Bonne soirée
_Claire_
Le 4 juin 2023, à 19:43, Martine Chazelas <martine.chazelas@free.fr> a
écrit:
Oui j'y ai pensé mais si je peux éviter de rajouter une colonne ce
serait mieux car c'est un fichier avec beaucoup de colonnes et le
fichier n'est pas simple à manipuler.
Mais ce sera peut-être la solution que j'utiliserais si pas de
solutions
via une table dynamique sans modifier le fichier ou alors j'utiliserais
les fonctions NB.SI ou somme.NB.SI sans passer par une table dynamique.
Martine
Le 04/06/2023 à 19:15, prog.amateur@free.fr a écrit :
Bonjour, Si tu peux changer la structure du fichier, tu pourrais
rajouter une colonne calculée avec le mois et faire ta table dynamique
sur cette colonne. Claude Le 04/06/2023 à 19:06, Martine Chazelas a
écrit : Bonjour, J'ai un tableau comportant plusieurs colonnes et
beaucoup de lignes. Ce tableau est mis à jour régulièrement par ajout
de lignes et je produis à chaque mise à jour un certain nombre de stats
utilisant des table dynamiques. Cela fonctionne très bien. Je bute sur
une table dynamique que je n'arrive pas à produire. J'ai une colonne
comportant une date (colonne C par ex) et je voudrais compter le nombre
de lignes qui contiennent du texte dans une autre colonne (colonne AJ
par ex) avec les données regroupées par mois et non pas date par date.
Ex j'ai ajouté 10 lignes pour le mois de juin 2021 aux dates suivantes
3/06/2021, 10/06/2021, 27/06/2021,... je voudrais que ma table
dynamique ne me donne pas le nombre par jour mais par mois c'est à dire
en juin 2021 10, en sept 2022 6, etc Je ne voudrais pas changer le
paramétrage de ma date car pour d'autres stat j'ai besoin de ce format
de date. Je n'ai pas trouvé. La seule chose trouvée est de rajouter un
filtre à la table et je peux une fois la table créée, trier sur une
période mais cela ne produit pas un tableau complet du nombre de lignes
entrées par mois de 2021 à 2023 par ex. Merci d'avance si vous avez une
piste Martine Chazelas
--
En recherche d'emploi, ne restez pas seuls
Solidarités Nouvelles face au chômage
https://snc.asso.fr/snc-nantes
tel 06 18 24 39 40
n'hésitez à diffuser ce message à toute personne en recherche d'emploi
autour de vous
Links:
------
[1] https://cloud.retzien.fr/index.php/s/KjJqY6CYcak3PzA/download
--
Envoyez un mail à users+unsubscribe@fr.libreoffice.org pour vous désinscrire
Les archives de la liste sont disponibles à https://listarchives.libreoffice.org/fr/users/
Privacy Policy: https://www.documentfoundation.org/privacy
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.