Excelで非表示の行/列を一括で再表示させたいときはないでしょうか。
けど、そんな中で悩むことは、
・ブックにあるすべてのシートの非表示の行/列を一括で再表示させたいが方法がわからない
ですよね。
今回はそんなお悩みを解決する
・Excel VBAでブックにあるすべてのシートの非表示の行/列を一括で再表示させる方法
についてまとめます!
もくじ
Excelで非表示の行/列を一括で再表示さる基本操作
Excelで非表示の行/列を一括で再表示さる基本操作について説明をします。
まずは、サンプルの表を用意し、
次に行と列の一部を非表示にします。
次に画面左上の右下矢印のアイコンをクリックし、全選択をおこないます。
列のエリアを右クリックし、再表示を選択します。
同じく行エリアを右クリックし再表示を選択します。
これで、すべての行と列が表示されました。
非表示の行/列を一括で再表示させるVBA
次はVBAを使い、非表示の行/列を一括で再表示させていきます。
対象を別シートにしたり、ブック全体のシートにすることもできますので、手作業がグッと減らすことができます。
サンプル表を複数シート用意します。
それぞれ行と列を非表示にしていきましょう。
表示シートの非表示の行/列を一括で再表示させるVBA
表示シートの非表示の行/列を一括で再表示させるVBAについて説明をします。
VBAコード
サンプルコードは以下の通りです。
Sub シートすべての行と列を再表示させる()
Cells.EntireColumn.Hidden = False
Cells.EntireRow.Hidden = False
End Sub
VBAを実装する
VBAの実装方法については
VBAの実装手順
をご参照ください。
VBAを実行する
VBAを実行してみましょう。
はい、今選択しているシートの非表示の行/列を一括で再表示できましたね。
VBAの説明
Cellsコレクションを使用することにより、すべてのセルを対象にすることができます。
列のプロパティ「EntireColumn」と行のプロパティ「EntireRow.」のHiddenプロパティをFalseにすることにより再表示の指定ができます。
Cells.EntireColumn.Hidden = False
Cells.EntireRow.Hidden = False
書式 | Object.EntireRow Object.EntireColumn |
---|---|
説明 | EntireRow プロパティは指定セル、範囲オブジェクトの行全体を取得します。 EntireColumn プロパティは指定セル、範囲オブジェクトの列全体を取得します。 |
指定シートの非表示の行/列を一括で再表示させるVBA
続いて、指定シートの非表示の行/列を一括で再表示させるVBAについて説明をします。
サンプルの表は前と同じものを使用しますが、今回対象とするシートは「Sheet2」です。
VBAコード
指定シートの非表示の行/列を一括で再表示させるコードは以下の通りです。
Sub 指定シートすべての行と列を再表示させる()
Sheets("Sheet2").Cells.EntireColumn.Hidden = False
Sheets("Sheet2").Cells.EntireRow.Hidden = False
End Sub
VBAを実行
VBAを実行してみましょう。
「Sheet2」シートだけが再表示されましたね。
VBAの説明
前回のコードにSheetsコレクションに引数”Sheet2″を指定し、加えることによりシートを指定することができます。
Sheets("Sheet2").Cells.EntireColumn.Hidden = False
Sheets("Sheet2").Cells.EntireRow.Hidden = False
すべてのシートの非表示の行/列を一括で再表示させるVBA
最後にブックに存在するすべてのシートの非表示の行/列を一括で再表示させるVBAについて説明をします。
サンプルの表を複数シート分用意し、行と列を非表示にしていきます。ょう。
VBAコード
すべてのシートの非表示の行/列を一括で再表示させるVBAコードは以下の通りです。
Sub ブックにあるすべてのシートの行と列を再表示させる()
Dim objWorksheet As Worksheet
'Worksheetsコレクションから1シートづつ取得します。
For Each objWorksheet In Worksheets
'シートの行と列を再表示させます。
objWorksheet.Cells.EntireColumn.Hidden = False
objWorksheet.Cells.EntireRow.Hidden = False
Next
End Sub
VBAを実行
VBAを実行してみましょう。
はい、すべてのシートの非表示の行/列を一括で再表示されていますね!
VBAの説明
For EachでWorksheetsコレクションから1シートづつオブジェクトを取得します。
For Each objWorksheet In Worksheets
取得したシートの行と列を再表示させます。
objWorksheet.Cells.EntireColumn.Hidden = False
objWorksheet.Cells.EntireRow.Hidden = False
VBAの実装手順
実装手順は以下の通りです。
Excel側にVBAを実装していきます。
①Excelを新規に開き、「開発」タブをクリックし、「VisualBasic」をクリックします。
もしくはショートカットキー「Alt」+「F11」でもOKです。
②標準モジュールを追加します。
左ペインのVBAProjectを右クリックし、「挿入」、「標準モジュール」を選択します。
③右ペインのウインドウに上記のVBAを入力します。
こちらで完了です。
VBAを実行する
では早速VBAの実行をしてみましょう。
①「開発」タブの「VBA」をクリックし実行したいマクロを選択し、「実行」をクリックします。
②処理がされたことが確認できれば完了です。
さいごに
いかがでしょうか。
今回は、
・Excel VBAでブックにあるすべてのシートの非表示の行/列を一括で再表示させる方法
についてまとめました。
また、他にも便利な方法がありますので、よろしければご参照頂ければと思います。
コメントを残す