Bonjour,
Novice de la conception des macros dans Excel 2007, j’en ai réalisé, avec la fonction enregistrement, un certain nombre qui fonctionnent parfaitement dans toutes les feuilles de mon classeur.
Or il en est une (code VBA ci-dessous) qui est censée faire un tri tout simple – tri croissant des cellules 1 à 20 de la colonne A – qui ne fonctionne QUE dans la Feuille1 où elle a été créée. D’ailleurs, le code VBA cite cette feuille 1 explicitement.
Comment faire en sorte que cette macro « tri_A1A20 » puisse être exploitée dans les autres feuilles ? J’imagine que cette question simple a déjà été traitée mais, bizuth dans ce forum, j’ai du mal à la repérer dans les 135.700 sujets proposés !
Merci beaucoup de votre aide
Sub tri_A1A20()
'
' tri_A1A20 Macro
'
'
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Feuil1").Sort.SortFields.Add Key:=ActiveCell, _
SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Feuil1").Sort
.SetRange ActiveCell.Range("A1:A20")
.Header = xlNo
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub