Problème de classement en VBA

  • Initiateur de la discussion Initiateur de la discussion beegees
  • 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 !

beegees

XLDnaute Occasionnel
Bonjour tout le monde,

J'ai cette macro :

Sub calcul()
'
' calcul Macro
' Macro enregistrée le 30/06/99 par Catherine Debeer
'

'
'sélectionne la plage de cellule "alpha"
Application.Goto Reference:="alpha"
'copie cette plage de cellule dans le clipboard
Selection.Copy
'sélectionne la cellule A10
Range("A10").Select
'sélectionne la feuille "ordre de mérites"
Sheets("ordre de mérites").Select
'séléctionne la range A1 de "ordre de mérites"
Range("A1").Select
'colle ce qui a dans le clipboard
ActiveSheet.Paste
'on sélectionne la plage nommée "delibec"
Application.Goto Reference:="delibec"
Application.CutCopyMode = False
'on classe par ordre décroissant et par rapport au pourcentage
Selection.Sort Key1:=Range("AK11"), Order1:=xlDescending, Key2:=Range( _
"AJ11"), Order2:=xlDescending, Header:=xlNo, OrderCustom:=1, MatchCase:= _
False, Orientation:=xlTopToBottom
ActiveWindow.SmallScroll Down:=-3
'on sélectionne la cellule B9
Range("B9").Select
End Sub

Qui au final classe dans la colonne AK les résultats d'abord par null et ensuite par ordre numérique.

J'aurais voulu que les cotes soient classées par ordre numérique en mettant les blancs en bas.

Un super grand merci d'avance.

beegees
 
Dernière édition:
Re : Problème de classement en VBA

Bonjour à tous, beegees

J'aurais voulu que les cotes soient classées par ordre numérique en mettant les blancs en bas.
Place les 2 lignes de code suivantes après ton tri
Code:
Range("Colx11:Coly" & [AK11].End(xlDown).Row - 1).Copy Range("AK65536").End(xlUp).Offset(1, 0)
Range("Colx11:Coly" & [AK11].End(xlDown).Row - 1).Delete Shift:=xlUp
Ligne 1: Copie la plage dont les cellules de la colonne AK sont vides à la fin
Ligne 2: Replace la liste en haut (ligne 11 si j'ai bien compris)

Il faut adapter le nom des colonnes (Colx et Coly dans le code)
J'ai mis le début de la liste en ligne 11, à adapter si besoin.

A plus
 
Re : Problème de classement en VBA

Bonjour à tous, beegees

Place les 2 lignes de code suivantes après ton tri
Code:
Range("Colx11:Coly" & [AK11].End(xlDown).Row - 1).Copy Range("AK65536").End(xlUp).Offset(1, 0)
Range("Colx11:Coly" & [AK11].End(xlDown).Row - 1).Delete Shift:=xlUp
Ligne 1: Copie la plage dont les cellules de la colonne AK sont vides à la fin
Ligne 2: Replace la liste en haut (ligne 11 si j'ai bien compris)

Il faut adapter le nom des colonnes (Colx et Coly dans le code)
J'ai mis le début de la liste en ligne 11, à adapter si besoin.

A plus

Bonjour Soenda,

Un super grand merci pour ta réponse.

Il faut adapter le nom des colonnes (Colx et Coly dans le code)

Sais-tu me dire quel noms je dois mettre ?

Merci encore.

beegees
 
- 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

A
Réponses
12
Affichages
2 K
AnjyD
A
B
Réponses
2
Affichages
773
bzhjenny
B
R
Réponses
1
Affichages
682
Rose_Chlh
R
C
Réponses
4
Affichages
2 K
C
Retour