Excelの非表示シートを一括再表示できるマクロをご紹介します。
複数ファイルもまとめて処理可能です。
目次
マクロ機能が有効なExcelブック「.xlsm」を作成
Excelブック「.xlsm」の作成方法が不明な場合は、下記の記事を参考にして下さい。
【エクセルVBA】マクロ機能が有効なExcelブック「.xlsm」の作り方
コードを標準モジュールに貼り付け
標準モジュールの開き方が不明な場合は、下記の記事を参考にして下さい。
【エクセルVBA】標準モジュールの開き方
標準モジュールを開いて、下記のコードを貼り付けて下さい。
コード
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
Sub シート一括再表示() Application.ScreenUpdating = False Dim OpenFileName As Variant OpenFileName = Application.GetOpenFilename _ ("EXCELファイル,*.xls*", MultiSelect:=True) If Not IsArray(OpenFileName) Then MsgBox "キャンセルされました。処理を終了します。": Exit Sub End If Dim FSO As FileSystemObject Set FSO = New FileSystemObject Dim n As Long '選択したファイル数、処理を繰り返す For n = LBound(OpenFileName) To UBound(OpenFileName) Dim wb As Workbook Set wb = Workbooks.Open(OpenFileName(n)) Dim sh As Object ' WorksheetまたはChart For Each sh In Sheets sh.Visible = True Next sh wb.Close SaveChanges:=True Set wb = Nothing '一時解放 Next n Application.ScreenUpdating = True MsgBox "完了しました。処理を終了します。" End Sub |
Microsoft Scripting Runtimeを有効にする
Microsoft Scripting Runtimeを有効にする方法が不明な場合は、下記の記事を参考にして下さい。
【エクセルVBA】Microsoft Scripting Runtimeを有効にする方法
マクロを実行
上記で作成したマクロファイル(ここでは「非表示シートをまとめて再表示.xlsm」とファイル名を設定。)と、
マクロ実行テスト用のダミーデータとして、エクセルファイルを準備します。
※マクロ実行テスト用のダミーデータとして作成した、非表示シートを含むエクセルファイル。
※マクロ実行テスト用のダミーデータとして作成した、非表示シートを含むエクセルファイル。
シートが非表示になっています。
マクロファイルを開いて、「コンテンツの有効化」をクリックします。
※設定により、「コンテンツの有効化」は表示されない(クリック不要の)場合もあります。
「開発」タブをクリックします。
「マクロ」をクリックします。
マクロ「シート一括再表示」を選択、「実行」をクリックします。
「ファイルを開く」ダイアログが表示されるので、
シートを再表示したい対象エクセルファイルを選択して、「開く」をクリックします。
ダイアログが表示されるので「OK」をクリックします。
マクロで選択したエクセルファイルを開くと、非表示シートが再表示されています。
完了です。