Classement automatique - où est la formule ?

  • Initiateur de la discussion Initiateur de la discussion Fireman.80
  • 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 !

F

Fireman.80

Guest
Bonjour,

Je viens de trouver un document dans le forum qui m'est presque adapté. Seulement je ne trouve pas la formule ou la macro permettant de trier automatiquement et de procéder au classement de ces colonnes.

Quelqu'un peut il me détailler la procédure dans le fichier joint ?

Merci d'avance.

PHIL
 

Pièces jointes

Re : Classement automatique - où est la formule ?

Bonsoir,

Click droit sur l'onglet, puis visualiser le code.
Voici ce qui tu verras :

Private Sub Worksheet_Change(ByVal zz As Range)
If Selection.Count > 1 Then Exit Sub
L = zz.Row: C = zz.Column: nbL = [A1].CurrentRegion.Rows.Count
Application.ScreenUpdating = False
Application.EnableEvents = False
If C = 2 And Cells(L, 1) <> "" Or C = 1 And Cells(L, 2) <> "" Then
[A1].CurrentRegion.Sort Key1:=[B2], Order1:=xlAscending, Header:=xlGuess
End If
[C2] = 1: [C2].DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1, Stop:=[A1].CurrentRegion.Rows.Count - 1
Application.EnableEvents = True
End Sub

mjo
 
Re : Classement automatique - où est la formule ?

mjo à dit:
Bonsoir,

Click droit sur l'onglet, puis visualiser le code.
Voici ce qui tu verras :

Private Sub Worksheet_Change(ByVal zz As Range)
If Selection.Count > 1 Then Exit Sub
L = zz.Row: C = zz.Column: nbL = [A1].CurrentRegion.Rows.Count
Application.ScreenUpdating = False
Application.EnableEvents = False
If C = 2 And Cells(L, 1) <> "" Or C = 1 And Cells(L, 2) <> "" Then
[A1].CurrentRegion.Sort Key1:=[B2], Order1:=xlAscending, Header:=xlGuess
End If
[C2] = 1: [C2].DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1, Stop:=[A1].CurrentRegion.Rows.Count - 1
Application.EnableEvents = True
End Sub

mjo

Bonjour Mjo ainsi que le fil,

2 Petites questions pour ce code qui me convient vraiment :

- comment faire en sorte que le classement se fasse en ordre décroissant au lieu de croissant ?
- comment décaler l'action de ce code sur une autre colonne ?

Merci beaucoup ! ! 😕

FIFI
 
Re : Classement automatique - où est la formule ?

Bonsoir Fifi

pour ta 1ère question, tu remplace xlAscending par xlDescending dans la ligne de code ci dessous :

Code:
If C = 2 And Cells(L, 1) <> "" Or C = 1 And Cells(L, 2) <> "" Then
[A1].CurrentRegion.Sort Key1:=[B2], Order1:=[B][COLOR="Red"]xlAscending[/COLOR][/B], Header:=xlGuess
End If

pour la 2ème, peut être qu'en remplacant A1 et B2, mais sans garantit je sais pas ce que tu veux faire exactement.

bonne soirée
@+
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
344
Réponses
10
Affichages
428
Réponses
7
Affichages
384
Réponses
3
Affichages
435
Retour