Bonjour a tous

Je souhaite réaliser un tri par ordre alphabétique d'une plage de cellules en fonction de ma colonne A.
Au début je ne devais trier qu'une certaine plage : des lignes A9 a A19 en fonction de la colonne A. Voici donc la macro que j'avais enregistre :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Sub Tri()
'
' Tri Macro
'
 
'
    Rows("9:19").Select
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sheet1").Sort.SortFields.Add Key:=Range( _
        "A9"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortNormal
    With ActiveWorkbook.Worksheets("Sheet1").Sort
        .SetRange Range("A9:K19")
        .Header = xlNo
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With
End Sub
Cependant, je vais devoir a présent insérer assez souvent des lignes entre A9 et A19 et donc ma macro n'est plus valide. Je voudrais répéter cette opération un peu plus bas dans la colonne également.

Exemple : Lignes fixes / Lignes susceptibles de changer du a des insertions

A1 : TITRE 1
A2 : valeur 1
A3 : valeur 3
A4 : valeur 4

A5 : TITRE 2
A6 : valeur 5
A7 : valeur 6

A8 : TITRE 3
A9 : valeur 7
A10 : valeur 8


J'avais donc pense a utiliser la formule INDIRECT pour trier les valeurs comprises entre TITRE 1 et TITRE 2 puis entre TITRE 2 et TITRE 3 puis entre TITRE 3 et rien mais je ne sais pas du tout comment faire...

Si je n'ai pas été assez claire, n'hésitez pas a me poser des questions.

Merci beaucoup !!!!!