Trier colonne de son nom

Je souhaiterais une formule pour ma macro qui serait généraliser pour tous mes fichiers

En effet l'emplacement de mes colonnes diffèrent en fonction de mes ficihers

Comment faire en sorte de faire un trie sur la colonne "Commentaire" à l'aide de son nom

plutot qu'a l'aide de son emplacement :

Range( _ "AB2:AB10000") ,

Mon trie écris les commentaires dans l'ordre alphabétique.

Sheets("Données").Select

Cells.Select

Range("T1").Activate

ActiveWorkbook.Worksheets("Données").Sort.SortFields.Clear

ActiveWorkbook.Worksheets("Données").Sort.SortFields.Add Key:=Range( _

"AB2:AB10000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _

xlSortNormal

With ActiveWorkbook.Worksheets("Données").Sort

.SetRange Range("A1:BE10000")

.Header = xlYes

.MatchCase = False

.Orientation = xlTopToBottom

.SortMethod = xlPinYin

.Apply

End With

Bonjour,

en nommant dans tous les onglets toutes les colonnes par " CTRL * " puis CTRL-SHIFT-F3 / ligne du haut, tu auras une colonne nommée "commentaire"

et puis ce code

Sub Trier()
Sheets("Données").Select
[commentaire].CurrentRegion.Select ' trouve la colonne de "commentaire"
adr1 = Split([commentaire].Address(0, 0), ":") ' trouve les caractères avant ":"
adr2 = adr1(0)
Selection.Sort Key1:=Range(adr2), Order1:=xlAscending, Header:=xlGuess
End Sub

Bonjour Noob, Patrick, bonjour le forum,

Peut-être comme ça (non testé) :

Sub Macro1()
Dim O As Worksheet
Dim R As Range
Dim COL As Integer

Set O = Sheets("Données")
Set R = O.Rows(1).Find("Commentaire", , xlValues, xlWhole)
If R Is Nothing Then Exit Sub Else COL = R.Columns
O.Range("A1:BE1000").Sort O.Cells(1, COL), xlAscending, Header:=xlYes
End Sub

Au top! Merci à vous

Rechercher des sujets similaires à "trier colonne nom"