「これはヤバかったな」という遅刻エピソード

※ 図に表示

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

「条件つきの行の非表示について」の質問画像

A 回答 (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でつなげて追加することができます。
    • good
    • 0
この回答へのお礼

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

お礼日時:2011/03/28 18:18

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!