所以我有一个“标志”列,我有条件地格式化为=IF(INDIRECT("RC",0)="",TRUE,FALSE)
,如果单元格为空白,它会更改字体颜色,以便字体颜色为不同的颜色(蓝色),因为当我手动按值排序时,空白单元格最终位于底部. 当我按字体颜色手动排序时,一切正常。
手动排序:
手动排序结果:
这个想法是让它成为一个宏,所以我记录了我做手动排序并得到以下信息:
Range("A1:F9").Select
ActiveWorkbook.Worksheets("Sheet1").SORT.SortFields.Clear
ActiveWorkbook.Worksheets("Sheet1").SORT.SortFields.Add(Range( _
"E2:E9"), xlSortOnFontColor, xlDescending, , xlSortNormal).SortOnValue.Color = _
RGB(0, 0, 0)
ActiveWorkbook.Worksheets("Sheet1").SORT.SortFields.Add Key:= _
Range("D2:D9"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Sheet1").SORT
.SetRange Range("A1:F9")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
但是,当我运行记录的代码时,我得到的结果与我想要的完全相反,底部带有空白标志的单元格:
我尝试将xlSortOnFontColor
's更改xlDescending
为xlAscending
,但它仍然具有相同的非预期结果。
问题: 鉴于我为一个有效的手动过程录制了一个宏,为什么录制的代码不起作用,代码应该是什么?