2017-08-09 7 views
1

製品全体(セル内)が廃止される可能性があるかどうかを調べる。中断された単語がセル内にある場合、これは真です。私はそれが中断されている場合は、行全体を非表示にしたい。助言がありますか?VBA-セルに特定のテキストが含まれているかどうかに基づいて行を非表示にする

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 
+0

それは今あなたを与えている行動は何ですか? – SandPiper

+0

手動で入力しました。コピーしたバージョンとして更新されました。 –

+0

今、これは何もしません... –

答えて

1
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 
関連する問題