2017-04-26 52 views
0

我在下面有一些代码目前没有工作。如何删除特定列名中单元格为空的所有行

它应该删除所有行中值为空的列中的列BI中的行。但是,我希望它删除所有列的单元格为空的行,其中A1单元格等于“DATA_TYPE”。

Sub RemoveBlanks() 
    Sheets("Sheet 1").Select 
    Columns("BI:BI").Select 
    Selection.SpecialCells(xlCellTypeBlanks).Select 
    Selection.EntireRow.Delete 
End Sub 

我该如何改变这种做法?目前,我得到一些奇怪的输出消息返回,指出“400”,我不知道这意味着什么...提前

感谢

+0

有你尝试过(复制)'Sheets(“Sheet1”)。Columns(“BI:BI”)。SpecialCells(xlCellTypeBlanks).EntireRow.Delete'? – pnuts

+0

好吧,那很好,但是我怎么能通过查找Cell A1 =“DATA_TYPE”而不是BI的列名来实现呢? – Porkball21

回答

0

这将做到这一点:

Sub DeletedBlankCells() 
Dim Rng As Range 

Set Rng = Rows("1:1").Find(What:="DATA_TYPE", After:=Cells(1, 1), LookIn:=xlValues, LookAt:=xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext) 
Sheets("Sheet1").Columns(Rng.EntireColumn.Address).SpecialCells(xlCellTypeBlanks).EntireRow.Delete 

End Sub 
+0

嗯,我得到一个调试错误 - Rng.EntireColumn.Address = <对象变量或与块变量未设置> – Porkball21

+0

@ Porkball21我的坏 - 它现在已修复 – Jeremy

+0

非常感谢!奇迹般有效 – Porkball21

相关问题