• ベストアンサー

条件つきの行の非表示について

※ 図に表示 品名が○○○の時だけ行を自動的に非表示にしたい場合どうすればいいでしょうか。 マクロでもなんでもいいので教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

例の画像に従って、A列に日付、B列に商品名、C列に価格が入っている表であると仮定します VBAマクロなので、VBAエディタで一般モジュールに貼り付けて使ってください。 Sub lineHide() ' 開始 ' 変数 Dim w1 As Worksheet ' 初期設定 Set ws1 = Worksheets("sheet1") '使用するシート名 ' 処理 For i = 2 To ws1.Range("A2").End(xlDown).Row ' データのある最終行まで(途中に空白行がない If ws1.Cells(i, 2) = "OOO" Then ' Cells(行番号、列番号)。商品名がB列と仮定してB列の値を参照 Rows(i).Hidden = True ' B列の値が"OOO"だったら、その行を非表示にする End If Next ' Forで取得した最終行まで繰り返し End Sub ' 終了 行につけてある説明はコメントアウトになってますので、そのまま使ってもらって大丈夫です 非表示にする行の商品名が OOO としてありますので、実際に併せて書き換えてください。 また、非表示にする商品名が複数ある場合には If ws1.Cells(i, 2) = "OOO" Then の部分を If ws1.Cells(i, 2) = "OOO" Or ws1.Cells(i, 2) = "XXX" Then などと、Orでつなげて追加することができます。

mabebe
質問者

お礼

細かく説明していただきありがとうございます。

関連するQ&A