执行.SpecialCells(xlCellTypeBlanks).EntireRow.Delete时出错400

时间:2014-03-28 02:32:59

标签: excel excel-vba excel-2007 vba

我已经坚持使用我的代码中的这部分而无法通过它:

'Sort Active Sheet By Property Case Number
Sheet2.Range("A1:AQ" & Sheet2.UsedRange.Rows.Count).Sort Key1:=Sheet2.Range("Z1"), Order1:=xlAscending, Header:=xlYes

'Remove Duplicate Property Case Number
Sheet2.Range("A1:AQ" & Sheet2.UsedRange.Rows.Count).RemoveDuplicates Columns:=26, Header:=xlYes

'Add Formula To Detect blank rows. This is a fix for the mistery blank rows that appear at this point
If Sheet2.UsedRange.Rows.Count > 1 Then
Sheet2.Range("AR1").Value = "Temp"
Sheet2.Range("AR2").Formula = "=IF(COUNTA(A2:AQ2)<>0,""Not Empty"","""")"       '"=IF(COUNTA(A2:AQ2)=0,""Not Empty"","""")"
Sheet2.Range("AR2").AutoFill Destination:=Sheet2.Range("AR2:AR" & Sheet2.UsedRange.Rows.Count), Type:=xlFillSeries
Sheet2.Columns("AR").Copy
Sheet2.Columns("AR").PasteSpecial Paste:=xlPasteValues
Sheet2.Range("A1:AR" & Sheet2.UsedRange.Rows.Count).Sort Key1:=Sheet2.Range("AR1"), Order1:=xlAscending, Header:=xlYes

Sheet2.Columns("AR").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
Sheet2.Columns("AR:AR").Delete
End If

这里的问题是代码执行&#34; .RemoveDuplicates Columns:= 26,Header:= xlYes &#34;它删除了重复的行,但这些行仍然包含在 sheet1.usedrange.rows.count 中,好像它们有不可见的内容或其他内容。

所以现在我必须添加一个代码来删除那些不可见的行,并将它们从usedrange计数中排除。我试过做一个&#34; .SpecialCells(xlCellTypeBlanks).EntireRow.Delete &#34;但我一直收到错误400,我无法看到我的代码有任何问题让我收到错误。顺便说一句,我是那种不喜欢使用逐行检查行的循环代码的程序员,我想制作一个尽可能快的程序。

0 个答案:

没有答案
相关问题