答:CustomOrder参数指定对字段进行排序的自定义次序
CustomOrder:=Application.CustomListCount + 1,更改为:
CustomOrder:=Join(arr1, ",")
以上程序也可以用下面代码替代:
Sub CustomSort()Dim iListNum As Integer
Application.AddCustomList listarray:=Worksheets("数据5").Range("B2:B23")
iListNum = Application.GetCustomListNum(Worksheets("数据5").Range("B2:B23").Value)
Worksheets("数据6").Range("B1:C22").Sort key1:=Range("C1"), order1:=xlAscending, Header:=xlNo, ordercustom:=iListNum + 1
Application.DeleteCustomList iListNum
End Sub
如图,有一组数据,既有学生的分数,又有性别,这里排列混乱,男女也混合在一起。
选中全部的数据,如图。
选择【排序与筛选】->【自定义排序】,如图。
先把男女生分开,选择“主要关键字”选择“性别”,也就是先按性别来排序。排列依据,选择“数值”,默认升序就行。
点击确定后看到男女生分开排序了。
再对男女生的数据按成绩排序,而且保持刚才的男女分开。再按第3条,进入“自定义排序”界面。如图,【添加条件】。
按红色框内的示例,选择“次要关键字”为“成绩”,排列依据为“数值”,次序为“升序”,根据自己需要来,如图。
点击【确定】后,就可以看到如图,把男女分开,并且分别按各自的成绩再排序。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)