使用vbs从excel文件中删除重复值

时间:2016-02-02 07:16:16

标签: excel vba vbscript

我正在尝试从excel文件中的列U中删除重复值,而所有其他列都为空。由于我使用的是UsedRange函数,因此遇到运行时错误。我使用以下代码:

 Set objXL = CreateObject("Excel.Application")
 Set objWB = objXL.Workbooks.Open(basedir & ss)
 Set objWS = objWB.Worksheets("Report 2")
 objWB.Saved = True
 objWB.ActiveSheet.UsedRange.RemoveDuplicates Array(20), 1
 objWS.Rows("1:2").Delete
 objWS.Columns("A:T").Delete

 call  objWB.SaveAs(temp_file_bu2,24)
 objWB.Saved=True

我尝试使用Range功能来选择列,但它不起作用。如果UsedRange范围内的所有列都填充了重复值,则只有该函数正在运行。

2 个答案:

答案 0 :(得分:0)

替换它;

 objWB.ActiveSheet.UsedRange.RemoveDuplicates Array(20), 1

用这个

objWB.ActiveSheet.UsedRange.RemoveDuplicates Columns:=21, Header:=xlYes

答案 1 :(得分:0)

如果所有其他列都为空,请替换此;

 objWB.ActiveSheet.UsedRange.RemoveDuplicates Array(20), 1

用这个

objWB.ActiveSheet.UsedRange.RemoveDuplicates Columns:=1, Header:=xlYes