Excel VBA RemovedDuplicates数组从NamedTable

时间:2018-08-02 14:39:40

标签: excel vba excel-vba duplicates regional-settings

我已经用record-macro创建了以下宏(因此当时它可以工作),但是如果我尝试重用它,则会失败:

  

错误代码1004

Application.Goto Reference:="table101"
Application.CutCopyMode = False
ActiveSheet.Range("table101[#Alle]").RemoveDuplicates Columns:=Array( _
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17), Header:=xlYes

该表具有300-2000列。代码在最后一行失败。

我已经搜索了多种可能的解决方案,但无法解决其中任何一个。

1 个答案:

答案 0 :(得分:0)

这对我有用:

Sub TestMe()

    Application.Goto Reference:="table101"
    Application.CutCopyMode = False
    ActiveSheet.Range("table101[#All]").RemoveDuplicates Columns:=Array( _
                            1, 2, 3, 4, 5), Header:=xlYes
End Sub

Alle更改为All。这是奇怪的,听起来像是错误,因为宏录制器会产生[#Alle]并且录制的代码不起作用:

enter image description here

如果我删除了e,它会起作用。这是我第一次看到MS Excel中记录的代码不起作用。