排序错误1004方法'范围'对象' _Global'失败

时间:2018-03-10 23:59:40

标签: excel-vba sorting vba excel

我有一个带有数据库连接并自动过滤的工作表我正在尝试排序,而且我无法解释为什么这不起作用:

Sub TEST()

    Workbooks("1.Receiving Worksheet Database 02 No Filter.xlsx").Activate
    Worksheets("Sheet1").Activate

    Worksheets("Sheet1").Range("A:AJ").Sort key1:=Range("B"), _
        order1:=xlAscending, Header:=xlYes

End Sub

1 个答案:

答案 0 :(得分:0)

好的,在阅读了另一篇建议有人录制宏的帖子之后,我就像是" duh!",有效的代码如下,我认为问题可能与数据库连接和自动过滤器。

    ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table_Query_from_Prototype"). _
        Sort.SortFields.Clear
    ActiveWorkbook.Worksheets("Sheet1").ListObjects("Table_Query_from_Prototype"). _
        Sort.SortFields.Add Key:=Range("Table_Query_from_Prototype[[#All],[ID]]"), _
        SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
        xlSortTextAsNumbers
    With ActiveWorkbook.Worksheets("Sheet1").ListObjects( _
        "Table_Query_from_Prototype").Sort
        .Header = xlYes
        .MatchCase = False
        .Orientation = xlTopToBottom
        .SortMethod = xlPinYin
        .Apply
    End With

美好而简单:|