Classement sous plusieurs conditions

kounflex

XLDnaute Nouveau
Bonsoir à toutes et à tous,

Avant de vous exposer mon problème, un grand merci à tous les membres d'avoir pris la peine de lire mon post!
Je vais essayer d'être le plus succint possible :

En préambule,
Toutes les données se trouvent dans un seul onglet [data], et les simulations se font dans un autre onglet [Simul].
L'idée est de sélectionner les données d'une colonne qui respectent 3 conditions et de les classer en fonction des valeurs d'une autre.

Dans l'onglet [Simul]: 4 listes déroulantes.
=> les 3 premières (grises) correspondent aux 3 conditions à respecter (pour la sélection des données à classer)
=> la 4ème (en jaune) correspond au libellé de la colonne en fonction des valeurs de laquelle va s'opérer le classement.
=> Je cherche à classer les données d'une seule et même colonne E de l'onglet [data].

Textuellement, ma requête serait :
Sélectionner les données de la colonne E de l'onglet [data] lorsque les 3 conditions sont remplies et les classer en fonction des valeurs de la colonne qui a pour libellé le titre de la 4e liste déroulante.

J'ai bien trouvé une manière de le faire avec des formules excel en 2 étapes, je vous laisse juger par vous même!
Mais j'aimerai autant le faire via une macro. En effet les formules sont hyper lourdes et font ramer le fichier comme pas permis, lorsque je change les conditions dans les listes déroulantes :(

A votre avis, y a-t-il un moyen d'y arriver par le biais d'une macro?
Si oui, l'idée serait d'arriver directement au résultat de l'étape 2 (cf fichier) ... en fonction des conditions choisies!

Encore un grand merci à vous toutes et à vous tous!
 

Pièces jointes

  • Kounflex.xlsm
    198.2 KB · Affichages: 78

kounflex

XLDnaute Nouveau
Re : Classement sous plusieurs conditions

Bonjour à toutes et à tous chers XLDiens et XLDiennes,
Bonjour Hasco ;)

Dans la continuité du fil, je cherche :
1. à extraire des données (d'un onglet vers un autre) sous plusieurs conditions
2. à trier ces données selon une clé +/- complexe.

Grâce à Hasco, le point 1 est réglé et le point 2 partiellement!
En effet, une fois extraites, les données sont triés suivant une clé simple : trier les données en fonction des valeurs (croissantes ou décroissantes) d'une colonne que je choisis (choix du titre de la colonne via une liste déroulante)

Problème 1:
Si par malheur, le libellé de la colonne par laquelle je veux que les données soient triées ne correspond pas au titre de la colonne à extraire, le tri ne s'effectue pas

Problème 2:
Je ne sais pas comment rajouter un 2e critère de tri.

Tout est expliqué dans la pièce jointe pour les courageux qui oseraient s'y aventurer ;)

Je sais pas vous, mais moi j'ai l'impression de mieux comprendre mon problème (sans toutefois trouver la solution) lorsque je cherche à être le plus clair possible pour vous l'expliquer!

Au plaisir de vous relire, et un grand merci pour vos réponses.
 

Pièces jointes

  • h_Kounflex_v5.1.xlsm
    172.4 KB · Affichages: 33
  • h_Kounflex_v5.1.xlsm
    172.4 KB · Affichages: 34
  • h_Kounflex_v5.1.xlsm
    172.4 KB · Affichages: 43
Dernière édition:
G

Guest

Guest
Re : Classement sous plusieurs conditions

Bonjour,

Soit tu tries les données, avant extraction dans la feuille data et elle seront extraites dans l'ordre de classement, soit tu les tries après extraction mais toutes les colonnes clefs de tri doivent apparaître dans la plage d'extraction.

Je ne comprends pas ton histoire de Tri sur FY10A puisque tu as tableaux extrait, l'un FY10A l'autre FY11A il n'ont pas besoin d'être trié sur cette clef.

A+

P.S. les mp ne me feront pas aller plus vite, bien au contraire.
 
Dernière modification par un modérateur:

kounflex

XLDnaute Nouveau
Re : Classement sous plusieurs conditions

Admettons que l'on trie les données avant l'extraction, quel serait alors le code vba pour d'abord trier en fonction de 2 critères puis extraire les données de telle sorte à avoir ,comme tu as pu le voir sur le fichier joint, à droite dans la feuille "Simul" les quelques colonnes pour les données de FY10A et un peu plus loin (1 colonne de séparation) les quelques colonnes pour les données de FY11A?

Merci et désolé pour les MP.
 
G

Guest

Guest
Re : Classement sous plusieurs conditions

Re,

Et l'enregistreur de macro, tu t'en sert jamais?

Cela pourrait être:
Code:
    Dim idx1 As Variant, idx2 As Variant
    With Sheets("data")
       'Index de position des clefs de tri
        idx1 = Application.Match(Sheets("Graph").Range("B14"), .Rows(1), 0)
        idx2 = Application.Match(Sheets("Graph").Range("B11"), .Rows(1), 0)
      
        If Not IsError(idx1) And Not IsError(idx2) Then
            .Range("A1").CurrentRegion.Sort _
                    key1:=.Cells(2, idx1), order1:=xlAscending, _
                    key2:=.Cells(2, idx2), order2:=xlAscending, _
                    Header:=xlYes
        End If
    End With

A+
 

kounflex

XLDnaute Nouveau
Re : Classement sous plusieurs conditions

Bonjour à toutes et à tous chers XLDiens et XLDiennes,
Bonjour Hasco

Toujours dans la continuité du fil, je vous invite à ouvrir la pièce jointe où j'explique ce que je recherche et s'il y a un moyen d'y arriver.

Merci par avance pour votre aide et vos commentaires.
A+
 

Pièces jointes

  • h_Kounflex_v6.xlsm
    172.9 KB · Affichages: 39

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 611
Messages
2 090 226
Membres
104 452
dernier inscrit
hamzamounir