Bonjour.
Je ne suis pas familier des méthodes Sort.
Je procède d'abord avec l'enregistreur de macros :
Mais je veux définir ma zone de tri en fonction de diverses variables.Code:
1
2
3
4
5
6
7
8 With ActiveWorkbook.Worksheets("Feuil1").Sort .SetRange Range("A5:A504") .Header = xlNo .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With
Dans un cas simple, Excel accepte :
.mais il ne veut pas de références plus compliquées du styleCode:SetRange Range(Worksheets("Courbes vraies").Cells(4 + 1, 1), Worksheets("Courbes vraies").Cells(4 + nb_de_coûts, 1))
j'aimerais bien comprendre pourquoi ;)Code:
1
2 .SetRange Range(Worksheets("Courbes vraies").Range(Worksheets("Courbes vraies").Cells(premier_scénario(classe) * 5, classe * 2 + 1), _ Worksheets("Courbes vraies").Cells(dernier_scénario(classe) * 5 + 4, classe * 2 + 1)))
Je ne peux pas faire :
etCode:
1
2 Set zone_de_tri = Worksheets("Courbes vraies").Range(Worksheets("Courbes vraies").Cells(premier_scénario(classe) * 5, classe * 2 + 1), _ Worksheets("Courbes vraies").Cells(dernier_scénario(classe) * 5 + 4, classe * 2 + 1))
ni d'ailleurs le plus simple zone_de_tri.Sort qui me paraîtrait bien plus simple, direct et transparent que ce que me propose l'enregistreur de macros...Code:.SetRange zone_de_tri
Quelqu'un peut-il aider un pauvre pèlerin ??
Merci !
Patrick