Tri colonne avec longueur variable sous Macro VBA
Bonjour à tous,
J'ai actuellement 3 colonnes Où se trouvent le "nom prénom" ( colonne A ), "l'adresse" ( colonne B ), et le "code Postal ville" ( colonne C ). Ces 3 colonnes sont bien triées par ordre alphabétique de la colonne A.
Ce tri a été fait sur un listing de l'année précédente. Chaque année de nouveaux noms ( et adresses ) peuvent être ajoutés.
J'ai enregistré une macro avec l'éditeur afin de refaire un tri automatique à chaque nouveau nom entré. Même quand je sélectionne les colonnes entières au moment de l'enregistrement avec l'éditeur, le programme tient compte seulement de la plage écrite et me donne le code ci-dessous :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
Sub Tri()
Columns("A:C").Select
ActiveWorkbook.Worksheets("Noms").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Noms").Sort.SortFields.Add Key:=Range("A1:A60"), _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Noms").Sort
.SetRange Range("A1:C60")
.Header = xlGuess
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
Range("A1").Select
End Sub |
Mon problème est donc : Comme remplacer les plages en fin de lignes 5 et 8 afin que ce soit des variables ( puisque des noms seront ajoutés ).
En espérant être clair, je vous souhaite une bonne journée.
Novice72