咨询:如何在现有VBA单列排序代码中添加另一列排序规则
多列排序的VBA代码修改方案
你只需要在原有的Sort方法参数中添加Key2、Order2(如果需要自定义排序规则或数据选项,还可以追加OrderCustom2、DataOption2)即可实现多列排序,同时注意移除原代码末尾多余的逗号(会导致语法错误)。
修改后的示例代码如下(以先按K列升序,再按M列降序为例):
Sheets("BP").Range("A1:Q3000").Sort _ Key1:=Sheets("BP").Range("K1"), Order1:=xlAscending, _ Key2:=Sheets("BP").Range("M1"), Order2:=xlDescending, _ Header:=xlGuess, OrderCustom:=1, MatchCase:=False, _ Orientation:=xlTopToBottom, DataOption1:=xlSortNormal
参数说明:
Key2:指定第二排序依据的列(示例中为M列)Order2:第二列的排序顺序,可选xlAscending(升序)或xlDescending(降序)- 如果需要更多列排序,还可以继续添加
Key3、Order3,VBA的Sort方法最多支持3个排序关键字
内容的提问来源于stack exchange,提问作者TK4795
相关产品推荐
相关产品推荐

