Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Ne pas tous trier

D

DUCL44

Guest
Bonjour le forum

Je viens de me lever et déjà j'ai une question

Je voudrais trier un tableau comme celui la

A1: 1 B1: Vélo C1: Decatlhon

A2: 1 B2: Cadre C2: Cannondale
A3: 2 B3: Selle C3: San marco
A4: 3 B4: Groupe C4: Shimano ultréga

A5: 1 B5: Cadre C5: Colnago
A6: 2 B6: Roue C6: mavic
A7: 2 B7: Groupe C7: Campagnolo record

Et voila ce que je veux obtenir:

A1: 1 B1: Cadre C1: Cannondale
A2: 2 B2: Selle C2: San marco
A3: 3 B3: Groupe C3: Shimano ultréga

A4: 1 B4: Cadre C4: Colnago
A5: 2 B5: Groupe C5: Campagnolo record
A6: 2 B6: Roue C6: mavic

A7: 1 B7: Vélo C7: Decatlhon

Le tri ce fait si il y a un 1 en colonne A et ce qui il ya en dessos reste
Si en dessous il y a deux 2 alors il se tri par la colone C alphabetiquement
Merci de votre aide je pense que c pas facile
Je sais comment trier mais la je seche

Merci et @+ sur le forum

DUCL
 
D

DUCL44

Guest
Re bonjour

En fait la macro de Myta fonctionne comme la formule.

Mais la formule ne marche plus si j'ai 2 ligne identique de niveau 1
(et oui dans ce cas particulier la formule d'andrée ne marche plus) :-(

Voir exemple pour plus d'explication

Merci de votre aide

@+

DUCL44
 

Pièces jointes

  • tri.zip
    2.8 KB · Affichages: 8
  • tri.zip
    2.8 KB · Affichages: 17
  • tri.zip
    2.8 KB · Affichages: 15
A

andré

Guest
salut,

J'ai vu le problème.

Je crois qu'en y ajoutant une condition avec la fonction NB.SI le problème sera résolu, mais est-ce que trois ou plusieurs lignes identiques peuvent exister ?

Je regarde ce soir, un oeil pour chaque écran (le foot !).

Ândré.
 
D

DUCL44

Guest
Salut André

Oui il peut y avoir plusieur lignes identiques ( pas forcément 2)
A la fin ta formule ajoute un "a", ne peut ton pas ajouter le numéro de ligne?
La moi je seche je métrise pas du tous

Merci pour tout

DUCL44

PS: Ne te prive pas trop de foot pour moi ;-)
 
A

andré

Guest
Resalut,

En y réflechissant (au cours de ma promenade matinale avec mes chiens), il me semble que le nombre de doublons est limité à 9.

En effet, après 9 tu auras 10 et le classement sera mauvais parce qu'il viendra s'intercaler entre 1 et 2.

Si tu veux passer au-delà des 9 doublons, tu devras remplacer le NB.SI(D$22;D2) par : SI(NB.SI(D$22;D2)<9;0&NB.SI(D$22;D2);NB.SI(D$22;D2))
Cette formule est toutefois limitée à 99 doublons.
Il y a moyen de passer au-delà en remodifiant la formule.

Je n'ai pas testé, mais si tu en as besoin et que cela ne marche pas, je regarderai.

Ândré.
 
D

DUCL44

Guest
Salut André

J'avais pas pensé a ca (meme pendant la promenade matinal de mon chien ;-) (berger allemand))

Bref 9 doublons ca n'ira donc pas et 99 ca peut etre juste dans certains de mes cas donc si tu a un moyen de faire plus je suis preneur.

Merci d'avance pour le temps que tu me consacre.

Bonne soirée

DUCL44
 
A

andré

Guest
Resalut,

Il me semblait bien !
Heureusement qu'il y a un monsieur "bonne formule" qui pense à tout.
D'autant plus que je viens de voir une erreur dans ma formule précédente.

Donc teste la formule suivante (je te l'écris en entier pour que tu puisses plus facilement la recopier) :

=SI(D2="";"";SI(B2=1;D2&SI(NB.SI(D$22;D2)<10;"00"&NB.SI(D$22;D2);SI(NB.SI(D$22;D2)<100;"0"&NB.SI(D$22;D2);NB.SI(D$22;D2)));A1&"a"))

Là tu vas jusque 999 doublons.
J'ai mis des "" autour du double 0 (zéro), car il m'est déjà arrivé qu'Excel en supprime un au passage.

Et maintenant ma promenade d'avant soirée (berger allemand et golden rietriver)

Ândré.
 
D

DUCL44

Guest
Re Bonjour

Encore un petit souci

Je n'arrive pas a enregistrer la formule en VBA

=SI(D2="";"";SI(B2=1;D2&SI(NB.SI(D$22;D2)<10;"00"&NB.SI(D$22;D2);SI(NB.SI(D$22;D2)<100;"0"&NB.SI(D$22;D2);NB.SI(D$22;D2)));A1&"a"))

Lorsque j'enregistre il refuse l'enregistrement de la formule

Elle doit etre trop longue :-(

Décidément je ne vais pas y arriver

Si quelqu'un peut encore m'aider ca serait cool

Bonne soirée à tous le monde

DUCL44
 
A

andré

Guest
Bonsoir DUCL44,

Le VBA c'est pas mon truc !

Si tu crois que la raison de tes ennuis est la longueur de la formule, alors tu peux essayer de la coupant en deux.
Je m'explique : tu crées encore une colonne supplémentaire dans laquelle tu calcules la partie centrale de ta formule, c'est à dire à partir de D2&SI(NB.SI ...
Dans la formule de ta première colonne tu fais référence au résultat de cette cellule, qui sera dès lors nettement moins longue.

Mais je suppose que d'autres te viendront en aide, car maintenant il ne s'agit plus que d'un petit problème de syntaxe.

Bonne soirée.
Ândré.
 
D

DUCL44

Guest
Bonsoir André

Merci de ton aide, tu as déjà fait beaucoup pour moi (le + dur d'ailleur) je vais essayer de couper la formule en deux mais pas tout de suite car la j'ai pas envie , on verra ca demain.
Bonne soirée et encore merci pour tout

DUCL44
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…