我目前正在尝试根据A列中的重复项将行从A列删除到V列。

我当前的公式是:

Workbooks(TgtWB).ActiveSheet.Range("A15:V500").RemoveDuplicates _
    Columns:=Array(1), Header:=xlYes


我的标题位于第15行。

我得到的错误是


应用程序定义或对象定义的错误


我曾尝试用ActiveSheet切换worksheet("xxx"),但似乎也不管用。我不确定在这里我在做什么错。

最佳答案

试试(注意工作表S,而不是工作表),

Workbooks(TgtWB).worksheetS("xxx").Range("A15:V500").RemoveDuplicates Columns:=1, Header:=xlYes
'or,
ActiveSheet.Range("A15:V500").RemoveDuplicates Columns:=1, Header:=xlYes


如果TgtWB已打开,则它可能包含或可能不包含ActiveSheet。每个打开的工作簿都没有一个ActiveSheet。该应用程序实例只有一个ActiveSheet。 ActiveSheet不是Workbooks集合的属性。

10-04 15:46