Sort en VBA sans connaitre dernière colonne

Fermé
SFillion - Modifié par SFillion le 16/07/2012 à 19:41
 SFillion - 16 juil. 2012 à 19:43
Bonjour,

Je travaille un classeur constamment en évolution dans lequel on me demande régulièrement d'ajouter des colonnes aux différents onglets. Mon problème est le suivant. J'ai énormément de code derrière cet outi et je trie souvent les onglets selon des critères différents dépendamment du besoin et des résultats attendus. Résultat, chaque fois que j'ajoute une colonne, je dois revoir mes différents modules pour modifier les "Range("A1:" & Colonne & Dernligne).Sort Key1:=Range("B2")", par exemple

Je connais le code qui me permet d'identifier la dernière colonne et la dernière ligne:
Dim DernCol As Integer, DernLigne As Long
DernLigne = Range("A" & Rows.Count).End(xlUp).Row
DernCol = Cells(1, Cells.Columns.Count).End(xlToLeft).Column

Cependant, le résultat obtenu pour la colonne est un chiffre. Je ne sais comment convertir ce chiffre en lettre pour mon RANGE("A....).sort. Pouvez-vous m'aider?
A voir également:

1 réponse

Ne cherchez plus, j'ai trouvé.

Dim DernLigne As Long, DernCol As integer, LetCol as string

DernLigne = Range("A" & Rows.Count).End(xlUp).Row
DernCol = Cells(1, Cells.Columns.Count).End(xlToLeft).Column
LetCol = Split(Cells(1, DernCol).Address, "$")(1)

Range("A1:" & LetCol & DernLigne).Sort Key1:=Range("B2"), Order1:=xlAscending, Key2:= _
Range("C2"), Order2:=xlAscending, Header:=xlGuess, OrderCustom:=1, _
MatchCase:=False, Orientation:=xlTopToBottom, DataOption1:=xlSortNormal, _
DataOption2:=xlSortNormal

Merci quand même et bonne fin de journée.
0