Bonjour à tous,
Je tente de faire un tri d'un tableau selon plusieurs critères type nom puis si nom identique prénom puis si les 2 identiques date de naissance via une macro sur excel 2007.
J'ai enregistré ma macro en faisant l'opération pour avoir le bon codage.
Le problème est que quand j'affecte ma macro à un bouton poussoir et que j'appuie dessus, les valeurs de mes cellules sont modifiées.
Il faut savoir que les cellules à triés sont toutes des formules du type "somme" ou "si" liées à d'autres cellule.
Exemple:
* formule de base
=SOMME(H4:J4;K5:M5;K8:M8)
* formule après tri
=SOMME(H1:J1;K2:M2;K5:M5)
Dans VBA j'ai cette programmation:
Sub tri_élèves()
'
' tri_élèves Macro
'
'
Range("T3:Y7").Select
ActiveWorkbook.Worksheets("élè ves").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("élè ves").Sort.SortFields.Add Key:= _
Range("V4:V7"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("élè ves").Sort.SortFields.Add Key:= _
Range("Y4:Y7"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("élè ves").Sort.SortFields.Add Key:= _
Range("W4:W7"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("élè ves").Sort
.SetRange Range("T3:Y7")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Sauriez-vous me donner une astuce pour conserver mes formules lors d'un tri?
Merci d'avance.
-----