Excel VBA-将排序顺序分配给变量

Excel VBA-将排序顺序分配给变量,excel,vba,Excel,Vba,我有一个完美的代码: ActiveWorkbook.Worksheets("compleanni").Sort.SortFields.Add2 Key:=Range( _ "I6:I23"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _

我有一个完美的代码:

    ActiveWorkbook.Worksheets("compleanni").Sort.SortFields.Add2 Key:=Range( _
                                                                       "I6:I23"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortTextAsNumbers
我想这样改变它:

myorder="xlAscending"
....
....
Order:=myorder
但它不起作用:我得到运行时错误13。
有什么建议吗?

xlAscending
是VBA(Excel)中预定义的常量,其类型为
long
(值为1,但这并不重要)

将变量
myorder
调暗为
Long
并分配常数:

Dim myorder as Long
myorder = xlAscending ' (or xlDescending)

去掉作业中的引号,它应该会起作用。试试
myorder=xlAscending
谢谢,效果很好!