VBA(マクロ)

[ExcelVBA]行や列の表示、非表示 / Hidden

ExcelVBA(マクロ)

マクロで列や行の表示(非表示)をするサンプルコード

VBAで行や列を表示したり非表示にしたりするサンプルコードです。
以下の内容をコードに入力し、実行してみます。

列の非表示_01 行の非表示・再表示のやり方

列を非表示にする

Columns("B").Hidden = True             'B列を非表示
Columns("B:D").Hidden = True           'B~D列を非表示
Range("B:B, E:F").EntireColumn.Hidden = True     'B、E、F列を再表示

Trueで非表示になります。

離れた複数の列を非表示にする場合、列はColumnの選択では非表示することができません。
Rangeで複数列を指定し、「EntireColumn」にすることで離れた複数列を非表示にすることができます。

列を表示する

Columns("B").Hidden = False             'B列を再表示
Columns("B:D").Hidden = False           'B~D列を再表示
Range("B:B, E:F").EntireColumn.Hidden = False    'B、E、F列を再表示

Falseで表示になります。(非表示→再表示)

行を非表示にする

Rows("3").Hidden = True               '3行目を非表示
Rows("3:5").Hidden = True             '3~5行目を非表示
Range("2:2, 5:6, 8:8").EntireRow.Hidden = True   '2、5~6、8行目を非表示

Trueで非表示になります。

離れた複数の行を非表示にする場合、行はRowの選択では非表示することができません。
Rangeで複数列を指定し、「EntireRow」にすることで離れた複数行を非表示にすることができます。

行を表示する

Rows("3").Hidden = False              '3行目を再表示
Rows("3:5").Hidden = False            '3~5行目を再表示
Range("2:2, 5:6, 8:8").EntireRow.Hidden = False  '2、5~6、8行目を再表示

Falseで表示になります。(非表示→再表示)

非表示になっているすべての列や行を表示するサンプルコード

すべての行や列をすべて表示する

Rows.Hidden = False              '非表示の行を再表示
Columns.Hidden = False            '非表示の列を再表示

Falseで表示になります。(非表示→再表示)

複数箇所が非表示になっている場合、行や列を指定しなければすべて表示されます。