はじめに
Excelで作業をしていると、
「一時的に行を隠して見やすくしたい」
「条件に合う行だけ非表示にしたい」
そんな場面がよくあります。
VBAでは、行を非表示にする方法がいくつかあり、
目的に合わせて使い分けることで、コードがより安全で扱いやすくなります。
ここでは、行を非表示にする基本のコードと、そのしくみを解説します。
まずはコードを確認
Rows(3).Hidden = True
もっともシンプルな書き方です。
3行目を非表示にします。
コードのしくみを解説
Rows(行番号).Hidden = True で行を非表示にする
Hidden = True は、行を隠すためのプロパティです。
Rows("3:5").Hidden = True '3〜5行を非表示
複数行をまとめて非表示にすることもできます。
Range を使って行を非表示にする
Range("A3").EntireRow.Hidden = True
- セルを基準に行全体を非表示にしたいときに便利
- EntireRow は「そのセルが属する行」を指します
シートを指定して非表示にする
Worksheets("データ").Rows(3).Hidden = True
複数シートを扱う場合は、シート名を明示すると安全です。
あわせて知っておきたいポイント
行を再表示する
Rows(3).Hidden = False
非表示を解除するときは False を指定します。
条件に合う行だけ非表示にする例
If Range("A3").Value = "" Then
Rows(3).Hidden = True
End If
空白行を隠すなど、実務でよく使うパターンです。
ループで複数行を非表示にする
Dim i As Long
For i = 1 To 10
If Cells(i, 1).Value = "非表示" Then
Rows(i).Hidden = True
End If
Next i
条件に応じて行を隠す処理は、データ整理で役立ちます。
使うときに気をつけたいこと
- 非表示にした行は見えないだけで削除されません
→ データは残っているため、後で再表示できます。
- 結合セルがあると非表示範囲が広がることがあります
→ 必要に応じて結合を解除してから操作します。
- フィルターと競合する場合があります
→ フィルター中の非表示は、意図しない動作になることがあります。
まとめ
- Rows(番号).Hidden = True で行を非表示にできる
- EntireRow を使うとセル基準で行全体を非表示にできる
- 条件付き非表示や複数行非表示など、実務で便利な書き方も多い
- 非表示は削除ではないため、後から再表示できる
行の非表示を自動化できると、データの見やすさがぐっと向上します。

行を非表示にする処理は、表を整えるときにとても便利な機能です。
必要な情報だけを見やすくすることで、作業がスムーズになります。

ちょっと隠しておきたい行は、VBAにそっとお願いしよう。
人は、必要な情報に集中できるね。

コメント