Classement sur 9 Tableaux

  • Initiateur de la discussion Initiateur de la discussion phil59110
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

phil59110

XLDnaute Occasionnel
Bonjour a Tous,
Et bon Dimanche,

Voila je voudrai faire un classement de Donnés sur neuf tableaux mais comme ça serait
compliqué de tout vous expliqué je vous est joint un petit fichier qui sera plus clair
que 36 discourts

Donc si vous pouviez y jeter un petit coup D'oeil
je vous en remerci Beaucoup
 

Pièces jointes

Re : Classement sur 9 Tableaux

Bonjour Phil,

Bon, un peu galère ta demande mais je crois que ça peut fonctionner comme ça :
Il faut d'abord nommer tes tableaux de "Tableau1" à "Tableau9".
Nommer aussi les en-têtes de la colonne qui sert à trier (la cellule contenant "Pts") de "Pts1" à "Pts9".

Après ça roule tout seul comme ça :
Code:
Dim T As Byte
For T = 1 To 9
    Range("Tableau" & T).Sort Key1:="Pts" & T, Order1:=xlDescending
Next T
End Sub

Bon dimanche.
 
Re : Classement sur 9 Tableaux

Bonjour Phil,

Bon, un peu galère ta demande mais je crois que ça peut fonctionner comme ça :
Il faut d'abord nommer tes tableaux de "Tableau1" à "Tableau9".
Nommer aussi les en-têtes de la colonne qui sert à trier (la cellule contenant "Pts") de "Pts1" à "Pts9".

Après ça roule tout seul comme ça :
Code:
Dim T As Byte
For T = 1 To 9
    Range("Tableau" & T).Sort Key1:="Pts" & T, Order1:=xlDescending
Next T
End Sub

Bon dimanche.

Bonjour jmps,
Je teste ça et je dit quoi!!
Merci beaucoup!!
 
Re : Classement sur 9 Tableaux

Je remerci Beaucoup Jmps!!
Mais par contre est ce que je pourais modifier la macro pour que les tableaux soit trier seulement en colonne T U comme dans l'exemple que j'avait donné je veut dire que les tableaux de la colonne Q R ne bouge pas et que le classement ce fait en colonne
T U
Merci Beaucoup
 
Re : Classement sur 9 Tableaux

Bonjour à tous,

Peux-tu essayer avec ceci associé à un bouton :

VB:
Option Explicit
 
Sub Classe()

With Feuil1
    Range("Q13:R233").Copy Range("T13")
    Range("T14:U33").Sort Key1:=Range("U14"), Order1:=xlDescending
    Range("T39:U58").Sort Key1:=Range("U39"), Order1:=xlDescending
    Range("T64:U83").Sort Key1:=Range("U64"), Order1:=xlDescending
    Range("T89:U108").Sort Key1:=Range("U89"), Order1:=xlDescending
    Range("T114:U133").Sort Key1:=Range("U114"), Order1:=xlDescending
    Range("T139:U158").Sort Key1:=Range("U139"), Order1:=xlDescending
    Range("T164:U183").Sort Key1:=Range("U164"), Order1:=xlDescending
    Range("T189:U208").Sort Key1:=Range("U189"), Order1:=xlDescending
    Range("T214:U233").Sort Key1:=Range("U214"), Order1:=xlDescending
    Range("T9").Select
    End With

End Sub

A + à tous
 
Re : Classement sur 9 Tableaux

Bonjour à tous,

Peux-tu essayer avec ceci associé à un bouton :

VB:
Option Explicit
 
Sub Classe()

With Feuil1
    Range("Q13:R233").Copy Range("T13")
    Range("T14:U33").Sort Key1:=Range("U14"), Order1:=xlDescending
    Range("T39:U58").Sort Key1:=Range("U39"), Order1:=xlDescending
    Range("T64:U83").Sort Key1:=Range("U64"), Order1:=xlDescending
    Range("T89:U108").Sort Key1:=Range("U89"), Order1:=xlDescending
    Range("T114:U133").Sort Key1:=Range("U114"), Order1:=xlDescending
    Range("T139:U158").Sort Key1:=Range("U139"), Order1:=xlDescending
    Range("T164:U183").Sort Key1:=Range("U164"), Order1:=xlDescending
    Range("T189:U208").Sort Key1:=Range("U189"), Order1:=xlDescending
    Range("T214:U233").Sort Key1:=Range("U214"), Order1:=xlDescending
    Range("T9").Select
    End With

End Sub

A + à tous

Je te Remerci BEAUCOUP JCGL

ça fonctionne SUPER!!

Bonne Soirée A toi Et a tout le Forum!
et Merci aussi a Jmps pour son intéré a ma demande
Phil59
 
Re : Classement sur 9 Tableaux

Bonjour JCGL, phil59110, jmps 🙂

Vois ceci :
VB:
Private Sub BTTrier_Click()
Dim T As Byte
    For T = 1 To 9
        Range("Tableau" & T).Copy Destination:=Range("Tableau" & T).Offset(0, 1).End(xlToRight)
        Range("Tableau" & T).Offset(0, 3).Sort Key1:=Range("Tableau" & T).Offset(0, 3).End(xlToRight), Order1:=xlDescending, Header:=xlYes
    Next T
End Sub

Klin89
 
Re : Classement sur 9 Tableaux

Je remerci Beaucoup Jmps!!
Mais par contre est ce que je pourais modifier la macro pour que les tableaux soit trier seulement en colonne T U comme dans l'exemple que j'avait donné je veut dire que les tableaux de la colonne Q R ne bouge pas et que le classement ce fait en colonne
T U
Merci Beaucoup

Bonsoir,

Bin suffisait de changer les références des noms "Tableau1" à "Tableau9" et "Pts1" à "Pts9".
Insertion / Nom / Définir...
 
Re : Classement sur 9 Tableaux

Bonjour JCGL, phil59110, jmps 🙂

Vois ceci :
VB:
Private Sub BTTrier_Click()
Dim T As Byte
    For T = 1 To 9
        Range("Tableau" & T).Copy Destination:=Range("Tableau" & T).Offset(0, 1).End(xlToRight)
        Range("Tableau" & T).Offset(0, 3).Sort Key1:=Range("Tableau" & T).Offset(0, 3).End(xlToRight), Order1:=xlDescending, Header:=xlYes
    Next T
End Sub

Klin89

a c'est super ça je vais tester ça aussi ça va bien me servir🙄
Merci beaucoup Klin89!!

Bonne soirée a toi!

Phil59
 
Re : Classement sur 9 Tableaux

Re phil59110

Moins fastidieux : sans nommer tes plages.

VB:
Sub Report_Et_Tri()
Application.ScreenUpdating = False
dl = Range("Q65536").End(xlUp).Row
x = 13
Do
   y = Range("Q" & x).End(xlDown).Row
   z = Range("Q" & y).End(xlDown).Row
   v = z - y
   Set plg = Range("Q" & x & ":R" & y)
   plg.Copy Destination:=plg.Offset(0, 1).End(xlToRight)
   plg.Offset(0, 3).Sort Key1:=Range("U" & x), Order1:=xlDescending, Header:=xlYes
   x = y + v
Loop Until x > dl
Application.ScreenUpdating = True
End Sub

VB:
Sub Report_Et_Tri()
Application.ScreenUpdating = False
dl = Range("Q65536").End(xlUp).Row
x = 13
Do
   Do While Range("R" & x).Interior.ColorIndex <> xlNone
     x = x + 1
     n = n + 1
   Loop
   y = x - 1
   z = Range("R" & x).End(xlDown).Row
   v = z - y
   Set plg = Range("Q" & x - n & ":R" & y)
   plg.Copy Destination:=plg.Offset(0, 1).End(xlToRight)
   plg.Offset(0, 3).Sort Key1:=Range("U" & x - n), Order1:=xlDescending, Header:=xlYes
   x = y + v: n = 0
Loop Until x > dl
Application.ScreenUpdating = True
End Sub
Klin89
 
Dernière édition:
Re : Classement sur 9 Tableaux

Bonjour Klin89,
excuse moi du retard de ma réponse !!
je te remerci Beaucoup pour ces codes ça va me permettre de faire des testes sur d'autre classment que j'ai prévu

Merci beaucoup a toi et a tout ceux qui m'on bien aidé avec leurs codes!!!!
et une bonne soirée a Tous!
Phil59110
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
12
Affichages
452
Réponses
3
Affichages
643
H
Réponses
6
Affichages
1 K
Hydre35000
H
Retour