Trier des feuilles excel selon un résultat.
Résolu
adsens
Messages postés
12
Date d'inscription
Statut
Membre
Dernière intervention
-
adsens Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
adsens Messages postés 12 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous,
J'ai un classeur excel de plusieurs feuilles avec des données :
Feuil1 : Cellule A6 [contient un résultat de calcul (exemple: 2000)] .
Feuil2 : Cellule A6 [contient un résultat de calcul (exemple: 3000)] .
Feuil3 : Cellule A6 [contient un résultat de calcul (exemple: 4000)] .
et ainsi de suite pour des dizaines de feuilles.
Et je veux faire un triage décroissant des feuilles selon le résultat .
J'espère que tout est claire.
Merci d'avance
J'ai un classeur excel de plusieurs feuilles avec des données :
Feuil1 : Cellule A6 [contient un résultat de calcul (exemple: 2000)] .
Feuil2 : Cellule A6 [contient un résultat de calcul (exemple: 3000)] .
Feuil3 : Cellule A6 [contient un résultat de calcul (exemple: 4000)] .
et ainsi de suite pour des dizaines de feuilles.
Et je veux faire un triage décroissant des feuilles selon le résultat .
J'espère que tout est claire.
Merci d'avance
A voir également:
- Trier des feuilles excel selon un résultat.
- Trier un tableau excel - Guide
- Liste déroulante excel - Guide
- Word et excel gratuit - Guide
- Resultat foot - Télécharger - Vie quotidienne
- Fusionner feuilles excel - Guide
3 réponses
c'est ce qui est fait dans le lien modifié (j'avais lu un peu vite la question)
en fait pas grand chose à modifier
si c'est ok, penses à mettre le sujet à Résolu (en haut à droite de ton premier message)
Bonne soirée
en fait pas grand chose à modifier
Call TriSel(tv, 1)
For nuf = nbf To 1 Step -1
Sheets(tv(nuf, 2)).Move after:=Sheets(nbf)
Next nuf
si c'est ok, penses à mettre le sujet à Résolu (en haut à droite de ton premier message)
Bonne soirée
Bonsoir le fil, bonsoir le forum,
Peut-être comme ça :
Peut-être comme ça :
Option Base 1 Sub Macro2() Dim NO As Byte 'déclare la variable NO (Nombre d'Onglets) Dim I As Byte 'déclare la variable I (Incrément) Dim TOS() 'déclare la variable TOS (Tableau des Onglets) Dim J As Byte 'déclare la variable J (incrément) NO = Sheets.Count 'définit le nombre d'onglets NO ReDim TOS(NO, 2) 'redimensionne le tableau des onglets TOS (NO lignes, 2 colonnes) For I = 1 To NO 'boucle sur tous les onglets TOS(I, 1) = I 'définit la valeur dans la colonne 1 du tableau TOS (le numéro de l'onglet) TOS(I, 2) = Sheets(I).Range("A6").Value 'définit la valeur dans la colonne 2 du tableau TOS (la valeur de A6 de l'onglet) Next 'prochain onglet de la boucle J = 1 'initialise la variable J For I = 1 To UBound(TOS, 1) 'boucle sur toutes les lignes du tableau TOS 'condition : si la valeur de la cellule A6 de l'onglet est la Jième plus petite valeur de la deuxième colonne du tableau TOS If TOS(I, 2) = Application.WorksheetFunction.Small(Application.Index(TOS, , 2), J) Then 'place l'onglet devant l'onglet numéro J, incrémente J Sheets(TOS(I, 1)).Move before:=Sheets(J): J = J + 1 End If 'fin de la condition Next I 'prochaine ligne de la boucle End Sub
Merci énormément, ça marche à merveille. Merci encore :)
Mais si c'est possible d'inverser le tri de "croissant" à "décroissant" !!!
et un grand merci d'avance @ccm81.