[Résolu] Création d'une liste des doublons

Discussions à propos du tableur Calc.
Les questions sur les macros doivent être postées dans la section dédiée en dessous.

Modérateur : Vilains modOOs

Règles du forum
Cette section est uniquement dédiée au tableur Calc. Vous ne devez pas poster ici de questions sur les macros mais utiliser la section éponyme.
COYOTEDU51
Fraîchement OOthentifié
Messages : 7
Inscription : 14 janv. 2025 07:24

[Résolu] Création d'une liste des doublons

Message par COYOTEDU51 »

Bonjour à tous!
Je n'ai pas trouvé la solution à mon problème, mais je ne l'aborde peut-être pas de la bonne façon.
Je voudrais que lorsque des doublons sont trouvés, une liste de ces doublons s'affiche.
En PJ, un tableau exemple pour comprendre ce que j'explique peut-être mal... :tesfou:
Merci d'avance à ceux qui répondront pour votre temps.
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par COYOTEDU51 le 04 févr. 2025 08:52, modifié 3 fois.
LibreOffice Community 7.3.7.2 - Ubuntu 22.04.5 LTS
Avatar de l’utilisateur
Bidouille
RespOOnsable forum
RespOOnsable forum
Messages : 12671
Inscription : 08 nov. 2005 16:23
Localisation : Brest, France

Re: Création d'une liste des doublons

Message par Bidouille »

Bonjour,
COYOTEDU51 a écrit : 31 janv. 2025 10:03 En PJ, un tableau exemple pour comprendre ce que j'explique peut-être mal...
Merci d'ajouter deux copies d'écran pour montrer le problème de départ et l'effet auquel vous souhaitez arriver.
Veuillez les poster à la suite de ce message en cliquant sur "Répondre".
COYOTEDU51
Fraîchement OOthentifié
Messages : 7
Inscription : 14 janv. 2025 07:24

Re: Création d'une liste des doublons

Message par COYOTEDU51 »

Bonjour Bidouille
alors voici le tableau pour exemple
exemple.png
en jaune: la colonne G où la formule dans chaque case me permet de savoir si le département apparait avec d'autres années (ici ligne 2, le "59" apparait 3 fois dans le tableau en dehors de l'année 2022). Je sais donc qu'il y a 3 autres "doublons".
Ce que je voudrais, c'est que dans chaque case de H, apparaisse la liste de ces doublons lorsqu'ils existent, comme ci-dessous:
exemple2.jpg
en orange la case qui affiche le résultat pour la ligne 7 où il existe 3 "doublons" de "59" en dehors de 2023.
J'espère que je me fais comprendre... :?
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice Community 7.3.7.2 - Ubuntu 22.04.5 LTS
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 6065
Inscription : 02 janv. 2009 23:56

Re: Création d'une liste des doublons

Message par Jean-Louis Cadeillan »

Bonsoir,
Je vois deux approches pour répondre à ton objectif :
  • la première consiste à mettre en place un autofiltre sur le département de ton choix ; c'est la méthode la plus simple à mettre en œuvre (voir Feuile2 du fichier joint) ;
  • la seconde (voir Feuille3) donne le tableau recherché (avec différenciation (en rouge) de la ligne dont on cherche les « doublons »), à côté des données initiales, moyennant un repérage (par un « x » dans la colonne Doublons) obtenu à la souris par liste déroulante ;
  • la Feuille1 est une construction dynamique des données de base, avec des formules qui piochent au hasard dans la feuille Ctrl, ces deux feuilles ont donc servi à la construction de l'exemple ;
  • dans les Feuilles 1 à 3, le montant est récupéré sur la feuille Ctrl par la fonction RECHERCHEV().
À tester ci-joint,
Cordialement,
Jean-Louis
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibO 24.2.7.2 (x64 et Java 1.8.0_451) et AOO 4.1.15 (et Java x32 1.8.0_431), Windows 7 Édition Intégrale 64 SP1
COYOTEDU51
Fraîchement OOthentifié
Messages : 7
Inscription : 14 janv. 2025 07:24

Re: Création d'une liste des doublons

Message par COYOTEDU51 »

Merci Jean-Louis! La solution de l'autofiltre n'est pas satisfaisante pour moi car en réalité je ne travaille pas sur des numéros de département mais sur des numéros à 10 chiffres / année dans des tableaux de plus de 5000 lignes... Mais ta solution en feuille 3 devrait parfaitement faire l'affaire!!
Merci encore d'avoir pris le temps de réfléchir à mon problème :super:
Bien cordialement.
Pascal
**********************************************************************************************************************************************
Alors Jean-Louis, j'ai essayé d'adapter à ma feuille réelle mais ça ne marche pas...
Je suppose qu'il y a des trucs que je ne maitrise pas.
Dans ton tableau, la feuille 1 est obligatoire pour que la feuille 3 fonctionne? La dernière feuille aussi?
Pour te montrer ce que j'ai fait pour adapter, je te mets l'exemple en PJ.
Si tu peux m'apporter tes lumières, ça serait sympa :D
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice Community 7.3.7.2 - Ubuntu 22.04.5 LTS
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
Messages : 6065
Inscription : 02 janv. 2009 23:56

Re: Création d'une liste des doublons

Message par Jean-Louis Cadeillan »

Bonsoir,
Les formules en N3:T13 sont matricielles : on valide la formule non par Entrée, mais par Ctrl+Maj+Entrée, ce qui fait apparaître dans la ligne de saisie des accolades en début { et en fin } de formule.
Ces formules matricielles ne retournent qu'une seule cellule (ce n'est pas le cas de toutes les formules matricielles), ce qui les rend plus faciles à modifier : on n'a pas besoin de sélectionner toute la plage de sortie pour les modifier.
Cependant, si une cellule contenant une formule matricielle a été validée par Entrée, pour corriger l'erreur et la rendre matricielle, l'interpréteur attend une modification pour prendre en compte une validation par Ctrl+Maj+Entrée : il suffit de rentrer en mode d'édition (F2), d'ajouter par exemple un espace à la fin, puis de valider par Ctrl+Maj+F2 : la matricialisation sera alors effective.
Pour recopier une formule matricielle vers le bas :
  • il suffit de positionner la souris dans le coin inférieur droit de la cellule : le curseur se transforme en croix (+), puis, il faut cliquer/glisser vers le bas tout en appuyant simultanément sur la touche Ctrl ;
  • une autre manière de faire est de copier la cellule initiale (Ctrl+C), puis de sélectionner la plage des cellules qui doivent contenir la même formule, puis de coller (Ctrl+V).
D'autres remarques :
  • j'ai remplacé les plages de type $C:$C par $C2:$C6000 : la plage $C:$C fait 1048576 cellules, la plage $C2:$C6000 n'en fait que 5999… 175 fois plus petite, le temps de traitement en est grandement amélioré !
  • j'ai remis en place la MFC (Mise en Forme Conditionnelle) basée sur la colonne U (analyse la formule) et le style Erreur, mais bien sûr on peut définir le style de son choix (y compris le créer) ;
  • j'ai fixé la ligne 13, ce qui permettra de toujours avoir en visuel le tableau N3:T13, même si on descend très loin dans le tableau A1:Kx.
COYOTEDU51 a écrit : 03 févr. 2025 09:34 Dans ton tableau, la feuille 1 est obligatoire pour que la feuille 3 fonctionne ? La dernière feuille aussi ?
La Feuille1 ne servait que de générateur d'exemple (comme tu n'en avais pas fourni), la dernière feuille, Ctrl, servait de référentiel pour les noms, les articles, les départements, les années, et pour calculer le montant à partir de l'article. Tout cela ne concerne pas la résolution de ton problème… la preuve, c'est que le fichier joint fonctionne très bien sans.
Cordialement,
Jean-Louis
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Dernière modification par Jean-Louis Cadeillan le 04 févr. 2025 10:33, modifié 1 fois.
LibO 24.2.7.2 (x64 et Java 1.8.0_451) et AOO 4.1.15 (et Java x32 1.8.0_431), Windows 7 Édition Intégrale 64 SP1
COYOTEDU51
Fraîchement OOthentifié
Messages : 7
Inscription : 14 janv. 2025 07:24

Re: Création d'une liste des doublons

Message par COYOTEDU51 »

Bonjour Jean-Louis
Encore une fois merci! Grâce à tes explications claires, tout fonctionne dans mon vrai tableau. Et je prends note pour le futur de tes petites astuces qui simplifient les choses comme la mise en forme conditionnelle, le gain de temps de traitement et fixer la ligne à la fin de ce qu'on veut garder sous les yeux :bravo:
Et encore merci pour le temps passé, qui me rend un grand service :super:
Bien cordialement
Pascal
LibreOffice Community 7.3.7.2 - Ubuntu 22.04.5 LTS