隐藏特定string在单元格中时的行
我在Excel 2007中遇到了VBA问题。当特定的string位于单元格中时,我需要一个macros来隐藏行。 (例如“取消系统PPP”)
我的macros:
Sub HideRows() Dim Cell As Range If InStr(Cell, "cancelled") And Rows(Cell.Row).Hidden = False _ Then Rows(Cell.Row).Hidden = True Next Cell End Sub
不幸的是,我得到了运行时错误“13”…你能帮助我吗?
这在Excel 2010中有效:
Sub hide_cancelled() For i = 1 To Rows.Count If InStr(Cells(i, 2).value, "cancelled") And Rows(i).Hidden = False Then Rows(i).Hidden = True End If Next i End Sub
请注意,这将迭代电子表格中的所有行,无论它们是否包含任何数据或完全为空。 可能还要等一下! 所以,而不是Rows.Count
你应该input一个更理智的价值。
此外,这将期望在第2列中的search值。更改此Cells(i,xxx)