【初月無料キャンペーン中】gooドクター

book.xlsm があり、
「インデックス」というシート以外に、複数のシートがあるのですが、
ブックを開いた時、強制的に「インデックス」シート以外は全て非表示にするには、
どうしたら良いでしょうか?

例えば、Workbook_openイベントに以下を記述するとエラーになってしまいます。
----------
Private Sub Workbook_Open()
For Each sh In Worksheets
sh.Visible = False
Next
Worksheets("インデックス").Visible = True
End Sub
----------

gooドクター

A 回答 (2件)

全部消すからでは?



Private Sub Workbook_Open()
For Each sh In Worksheets
if Not sh.name = "インデックス" then
sh.Visible = False
end if
Next
End Sub

これでいけるんじゃない?
    • good
    • 1

こんにちは



原因はNo1様の回答にある通りでしょう。

何かの都合で、「インデックス」シートが非表示になっている可能性がないのなら、No1様の回答で十分と思われます。
そうでない場合は、「最初に当該シートを表示状態にしておいてから、それ以外のシートを非表示にする」という手順にしておいた方が宜しいでしょう。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

gooドクター

このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング