代码之家  ›  专栏  ›  技术社区  ›  Ronan Garrison

VBA-根据单元格是否包含特定文本隐藏行

  •  2
  • Ronan Garrison  · 技术社区  · 7 年前

    查看扫描整个列以查看产品(在单个单元格中)是否可能停产。如果不连续词在单元格中,则为真。如果停止,我希望整行都隐藏起来。有什么建议吗?

    Sub HideRows()
        Dim c As Range
        For Each c In Range("B3:B2452")
            If InStr(1, c, "Discontinued") Or InStr(1, c, "discontinued") Then
                c.EntireRow.Hidden = True
            End If
            Next
    End Sub
    
    1 回复  |  直到 7 年前
        1
  •  5
  •   tigeravatar    7 年前
    Sub HideRows()
    
        Dim rCheck As Range
        Dim rHide As Range
        Dim rCheckCell As Range
    
        Set rCheck = ActiveWorkbook.ActiveSheet.Range("B3:B2452")
        rCheck.EntireRow.Hidden = False
    
        For Each rCheckCell In rCheck.Cells
            If InStr(1, rCheckCell, "Discontinued", vbTextCompare) > 0 Then
                If Not rHide Is Nothing Then Set rHide = Union(rHide, rCheckCell) Else Set rHide = rCheckCell
            End If
        Next rCheckCell
    
        If Not rHide Is Nothing Then rHide.EntireRow.Hidden = True
    
    End Sub