• ベストアンサー

エクセルについて

一つのブックに多数のシートをつけています。 1枚目のシートをメニューとして、ハイパーリンクで各シートにジャンプできるように設定しています。 各シートは常に編集して上書き保存をしています。 そこでなのですが、このブックを立ち上げたとき、必ず、1枚目のメニューのシートが表示されるようにするにはどうしたらよいのでしょうか? 上書き保存をして、このブックを閉じ、次にこのブックを立ち上げると、最後に上書き保存をしたシートが表示されてしまうのですが・・・。 どなたか教えてください。 宜しくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

#1のご回答と実質は似てますが、 人間心理的に、はじめる時の方が何か急いで早くスッキリ始めたいような気がすると思いまして、 Open=>(Before)Closeと前倒ししてみました。 どちらもOPEN時にマクロを有効にするかどうか聞いてくるのがキズですが。 Private Sub Workbook_BeforeClose(Cancel As Boolean) Worksheets("sheet1").Activate MsgBox "sheet1をactivate" End Sub 本番では、MsgBox "sheet1をactivate"の行は抹消してください。 1例でテスト済み。

doradora1306
質問者

お礼

有難うございました。 助かりました。

その他の回答 (1)

  • chupark
  • ベストアンサー率41% (90/218)
回答No.1

マクロを使う方法でもよいでしょうか? ただし、ブックを開くときにマクロに関する確認のダイアログが出てきてしまうのが邪魔ですが...。  マクロの中身自体は非常に簡単です。    VisualBasicEditorを起動して、  ThisWorkBookの中に以下のマクロを設定します。 例では最初に開きたいメニューシートを"Sheet1"と仮定して書きました。  該当部分をそのシート名に書き換えればできると思います。   Private Sub Workbook_Open() Worksheets("Sheet1").Activate End Sub

doradora1306
質問者

お礼

有難うございました。 やはりVisualBasicEditorで設定するのですかぁ。 これ難しいと思っていましたが、やってみたらできました。助かりました。