Excel 2013 删除带有特定文本的行而不留空行
Excel 2013 deleting rows with specific text without leaving blank rows
我正在尝试澄清日志,其中某些条目中有评论,而有些则没有。所以我想做的是删除一整行,其中一列中有注释,例如 NULL,这样它就不会在后面留下空白行,因为它会扰乱我的其他条件格式设置规则。
我猜想这种自动化需要 VBA 但由于我不是全职编码员,我什至不知道如何开始解决这个问题。
提前感谢大家的回复!
这不是一个非常复杂的答案,但你的问题也不是,所以希望它能让你继续。这假设您的评估在 A 列中。您显然可以更改它。如果你有数万行,你可能想关闭一些功能,比如屏幕更新,但这是一个不同类型的问题。
Sub ClearThatOut()
Dim rCell As Range
restart:
For Each rCell In Intersect(Columns("A"), ActiveSheet.UsedRange).Cells
If UCase(rCell.Value2) = "NULL" Then
rCell.EntireRow.Delete
GoTo restart
End If
'Example of secondary text, you could put as many of these as needed.
If UCase(rCell.Value2) = "OH NO!" Then
rCell.EntireRow.Delete
GoTo restart
End If
Next rCell
End Sub
我正在尝试澄清日志,其中某些条目中有评论,而有些则没有。所以我想做的是删除一整行,其中一列中有注释,例如 NULL,这样它就不会在后面留下空白行,因为它会扰乱我的其他条件格式设置规则。
我猜想这种自动化需要 VBA 但由于我不是全职编码员,我什至不知道如何开始解决这个问题。
提前感谢大家的回复!
这不是一个非常复杂的答案,但你的问题也不是,所以希望它能让你继续。这假设您的评估在 A 列中。您显然可以更改它。如果你有数万行,你可能想关闭一些功能,比如屏幕更新,但这是一个不同类型的问题。
Sub ClearThatOut()
Dim rCell As Range
restart:
For Each rCell In Intersect(Columns("A"), ActiveSheet.UsedRange).Cells
If UCase(rCell.Value2) = "NULL" Then
rCell.EntireRow.Delete
GoTo restart
End If
'Example of secondary text, you could put as many of these as needed.
If UCase(rCell.Value2) = "OH NO!" Then
rCell.EntireRow.Delete
GoTo restart
End If
Next rCell
End Sub