お品書き
書き直し中…
とりあえず、中へどうぞ
↓↓↓
スポンサーリンク

EXCELで非表示にしたシートをまとめて再表示するには

PC/ネット
エクセルで、「シートを非表示」は複数のシートを選んでまとめて出来るのに、再表示は一枚ずつやらないとできないのですよね。

気がついたら非表示のシートがたくさん溜まっていて、まとめて表示させたいのに、一枚ずつしかできなくてイライラ…(笑)

なにか方法はないのか少し調べてみたのですが、見つからず。

マクロでやってしまうのが簡単そうです。

「マクロの記録」をオンにして、シートを一枚再表示してみる。

マクロの記録を終了して、VisualBasicEditorを開くと
Sheets("sheet1").Visible = True
となっていたので…

for Next で回せるかな?
Sub シート再表示() For i = 1 To Sheets.Count Sheets(i).Visible = True Next End Sub
できたー\(^o^)/

For Next ではなく、For Each を使ってもできるようです。
For Eachステートメントとは、配列やコレクションなどのグループの各要素に対して繰り返し処理を行う場合に使う。
コレクションとは、オブジェクトの集合のこと
Sub シート再表示() Dim sht As Worksheet For Each sht In Worksheets sht.Visible = True Next End Sub
※For Nextのほうが汎用性は高いが、コレクションに対する処理の場合はFor Eachのほうが短く済むらしい。

(この程度のスクリプトでは違いが分かりませんが…)

コメント