[Résolu] trier ordre croissant NNNxNNN (longueur x largeur)

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.

[Résolu] trier ordre croissant NNNxNNN (longueur x largeur)

Messagepar Gégé67120 » 21 Avr 2020 15:44

Bonjour !
je voudrais trier par ordre croissant dans une colonne OpenOffice Calc
une liste de chiffre longueur X largeur
en prenant en compte en premier le premier chiffre
exemple 30x5; 60x8; 90x12; 10x4; 120x6
cela devrait donner
10x4
30x5
60x8
90x12
120x6
le plus simple serait de mettre le premier chiffre dans une colonne et le deuxième dans une autre colonne
mais çà je sais faire... et c'est pas le but de ma question
merci
Open Office 4.1.5 sous Windows 10
Gégé67120
Fraîchement OOthentifié
 
Message(s) : 1
Inscrit le : 21 Avr 2020 15:15

Re: comment trier par ordre croissant

Messagepar Michel JANZEF » 21 Avr 2020 16:28

Bonjour,
Avec LibreOffice, il existe une option à cocher " Activer le tri naturel " qui offre cette possibilité de tri, mais qui n'existe pas avec OpenOffice.
Domicile :
1- AOo 4.1.7 et LibO 6.3.6.2 (x64) - Windows 10 Famille 1903 64 bits
2- AOo 4.0.1 et LibO 4.1.5.3 sous Windows XP Familiale SP3
Avatar de l’utilisateur
Michel JANZEF
HédOOniste
HédOOniste
 
Message(s) : 2212
Inscrit le : 12 Jan 2006 11:04

Re: comment trier par ordre croissant

Messagepar micmac » 21 Avr 2020 16:37

Bonjour et bienvenue,
Dans votre signature il y a écrit: Open Office 4.1.5
Cette version de OpenOffice est obsolète.
Si c'est une obligation, mentionnez-le dans votre signature en ajoutant Obligation de version.

Afin de profiter des dernières améliorations, il est fortement recommandé d'être à jour de la dernière version

Accès direct à votre signature pour la corriger.
Les formats ouverts (ODF) assurent la pérennité de vos documents.
Avatar de l’utilisateur
micmac
RespOOnsable forum
RespOOnsable forum
 
Message(s) : 6889
Inscrit le : 28 Août 2010 09:45

Re: comment trier par ordre croissant

Messagepar Jean-Louis Cadeillan » 21 Avr 2020 18:08

Bonsoir,
Une solution serait de remplacer le x par la virgule, de trier et de remplacer la virgule par le x. On peut faire avec une seule formule matricielle (validation par Maj+Ctrl+Entrée). Cette formule a besoin de savoir le nombre d'entrées à trier, ou du moins borner ce nombre. Par exemple, dans le fichier joint, j'ai borné à 100.
Si ta liste non triée est en colonne A, en B1 tu peux saisir :
Code : Tout sélectionner   AgrandirRéduire
=SUBSTITUE(PETITE.VALEUR(SI(ESTERR(CNUM(SUBSTITUE(A$1:A$100;"x";",")));"";CNUM(SUBSTITUE(A$1:A$100;"x";",")));LIGNE(A1));",";"x")
et valider par Maj+Ctrl+Entrée.
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) .
L'avantage de cette formule par rapport à un tri, même le tri «naturel» de LibreOffice, c'est que si tu rajoutes des entrées en colonne A, la liste triée se met à jour toute seule, sans avoir rien à réactualiser.
Cordialement,
Jean-Louis
Pièces jointes
Gégé67120_20200421_JLC01.ods
(10.38 Kio) Téléchargé 4 fois
LibO 6.3.6.2 (x64 avec Java 1.8.0_241) et AOO 4.1.7 (avec Java x32 1.8.0_251), Windows 7 Édition Intégrale 64 SP1, (Domicile)
LibO 5.4.1.2 (x86) sous Ubuntu LTS 16.04.1, noyau 4.4.0-93 et Xfce 4.12, Java (x86) 1.8.0_131 (Travail) [obligation de version]
Avatar de l’utilisateur
Jean-Louis Cadeillan
GourOOu
GourOOu
 
Message(s) : 5007
Inscrit le : 03 Jan 2009 00:56


Retour vers Tableur

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 4 invité(s)