Bonjour à tous,
Je vous solicite à nouveau pour un petit problème que je ne parviens pas à régler.
Dans une feuille excel "Project", j'ai une plage de données de la colonne C à la colonne R.
C10:R11 = En tête de colonnes (il y a des cellules fusionnées)
A partir de C12 = Données à trier.
A partir de la ligne 12, je souhaite trier mes données de la manière suivante :
Colonne R : Tri de Z à A
Colonne C : Tri personnalisé, avec une liste déjà créée (General, ProgM,BP, Other)
J'ai créé la macro ci-dessous
Elle fonctionne sur toutes mes données, sauf pour la 1ère ligne de ma plage : la ligne 12.
Pourriez-vous m'éclairer sur ce qui cloche svp ?
Mille merci par avance,
Je vous solicite à nouveau pour un petit problème que je ne parviens pas à régler.
Dans une feuille excel "Project", j'ai une plage de données de la colonne C à la colonne R.
C10:R11 = En tête de colonnes (il y a des cellules fusionnées)
A partir de C12 = Données à trier.
A partir de la ligne 12, je souhaite trier mes données de la manière suivante :
Colonne R : Tri de Z à A
Colonne C : Tri personnalisé, avec une liste déjà créée (General, ProgM,BP, Other)
J'ai créé la macro ci-dessous
Elle fonctionne sur toutes mes données, sauf pour la 1ère ligne de ma plage : la ligne 12.
Pourriez-vous m'éclairer sur ce qui cloche svp ?
VB:
Sub Tri()
'Tri personnalisé
Range("C10:C11").Select
ActiveWorkbook.Worksheets("Project").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Project").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Project").AutoFilter.Sort.SortFields.Add Key:= _
Range("R11:R163"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption _
:=xlSortNormal
With ActiveWorkbook.Worksheets("Project").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
ActiveWorkbook.Worksheets("Project").AutoFilter.Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Project").AutoFilter.Sort.SortFields.Add Key:= _
Range("C12:C163"), SortOn:=xlSortOnValues, Order:=xlAscending, CustomOrder _
:="General,ProgM,BP,Other", DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Project").AutoFilter.Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
End Sub
Mille merci par avance,
Dernière édition: