错误800A0400为ActiveSheet.Range(“$ A $ 1:$ CV $ 749”)。RemoveDuplicates Columns:= 2,Header:= xlNo

Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True Set Excel2= objExcel.Workbooks.Open("D:\DBG\Temp.xlsm") Excel2.Worksheets("output").Activate ActiveSheet.Range("$A$1:$CV$749").RemoveDuplicates Columns:=2, Header:=xlNo 

如果我尝试执行上面的代码,我得到错误。提前感谢

 Line 35 Char 60 Error Expected statement Code 800A0400 

我该如何解决这个问题

在VBS脚本中既不使用命名参数(例如: Columns:= )也不使用Excel.Application常量(例如xlNo )。 Range.RemoveDuplicates方法中使用的参数(例如Columns:=Header:= )是唯一允许的两个参数, xlNoparsing为2。

 Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True Set Excel2= objExcel.Workbooks.Open("t:\tmp\Temp.xlsm") Excel2.Worksheets("output").Activate Excel2.ActiveSheet.Range("$A$1:$CV$749").RemoveDuplicates 2, 2 

ActiveSheet属性也需要引用其父级Excel应用程序对象 。