基于空白单元格删除行

如果交叉列中的某个单元格为空,是否有一种简单的方法可以让Excel删除行? 这需要VBA吗?

作为一个参考点,我find了下面的VBA代码:

Dim FoundCell As Range Application.ScreenUpdating = False Set FoundCell = Range("B:B").Find(what:="") Do Until FoundCell Is Nothing FoundCell.EntireRow.Delete Set FoundCell = Range("B:B").FindNext Loop 

但由于某种原因,当我尝试运行它时会崩溃。

如果您希望删除列B中的值为空的所有行,请尝试:

 Sub KleanB() Dim B As Range, rDel As Range, r As Range, N As Long N = Cells(Rows.Count, "B").End(xlUp).Row Set B = Range("B1:B" & N) B.Cells.SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub 

对于非VBA解决scheme:

select空白可能出现的列。 按F5(转到),单击特殊,然后select空白。 点击OK。 只有空白单元格将被选中。 右键单击其中一个空白单元格,然后单击删除行。