• ベストアンサー

Excel 2003

セルに他のシート(ファイル)を開くようにする命令文(関数?)を入れたいのですが方法が分かりません。 セル A1 に 『札幌』 と入力し セル A1 をクリックすると札幌のデータ(他ファイル)が開くという形にしたいのですが、ウェブで何時間も探してみたのですが方法がわかりませんでした。 お分かりになる方いらっしゃいましたら、お教え下さい。 宜しくお願いします。

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

  • ベストアンサー
noname#95859
noname#95859
回答No.4

イベントプロシージャと言う手はどうでしょうか? ”札幌”とか入力されているシートのみで有効なプロシージャです。 Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) If Target.value ="札幌" then     Workbooks.Open Filename:="C:\vvvv\ddddd.xls" sheets("xxxxx").select end if If Target.value ="旭川" then     Workbooks.Open Filename:="C:\zzzz\aaaaaa.xls" sheets("bbbbbb").select end if End Sub これで、札幌のセルをダブルクリックした時、期待するファイル(シート)も開かれます。

nenena
質問者

お礼

すごいです! やってみて感動しました! エクセルって奥が深いですね~ ありがとうございました^-^

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.3

>シートまで選択できる方法というのはないのでしょうか VBAで「クリックしたセルの値と合致するシートがあれば、そのシートを開く」方法と、#01さんも書かれているハイパーリンクを用いる方法があります。 前者が良ければ、シート名右クリック→「コードの表示」で開く画面に以下のマクロを貼り付けて、シートに戻りA1をクリックしてみてください。ただしこの方法は「札幌」という名前のシートが必要です。 Private Sub Worksheet_SelectionChange(ByVal Target As Range) Dim ws As Worksheet For Each ws In Worksheets If ws.Name = Target.Value Then ws.Activate End If Next ws End Sub 後者であれば、シート名や跳び先のセルは自由に設定できます A1を選択し「挿入」→「ハイパーリンク」でウィザードを開き、リンク先を「このドキュメント内」にします。ジャンプ先のシート名を選択し、「セル参照を入力して下さい」の欄にはセルアドレスを指定すればOKです。 「シートを開く」というご要望のようなので、今回は書きませんでしたが「名前」→「定義」で「札幌」という表を定義して、VBA,ハイパーリンクで飛ばす方法もあります。

nenena
質問者

お礼

うまくいきました! ありがとうございました^-^

すると、全ての回答が全文表示されます。
  • graniph
  • ベストアンサー率46% (77/167)
回答No.2

確認したいのですがつまり、それを複数つくり、 札幌をクリックしたら、Aというエクセルデータの札幌というシートを開くように。 また、釧路というセルを作り、そこをクリックしたらA(札幌と同じファイル)の釧路というシートを開くようにするということですか? 同一エクセル内の別のシートを開かせるのであればできないことはないですが、別ファイルの、シートを指定して開かせるのは難しそうですね。。。

nenena
質問者

お礼

そのとおりです! そうしたいのですがやはり無理でしょうか。。。

すると、全ての回答が全文表示されます。
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

A1を選択し、メニューの「挿入」、「ハイパーリンク」で目的のファイルを指定すればできますよ。

nenena
質問者

お礼

早速のお返事ありがとうございます。 この方法でファイルだけでなくシートまで選択できる方法というのはないのでしょうか? 度々すいません。><

すると、全ての回答が全文表示されます。

関連するQ&A