• ベストアンサー

エクセル シートの検索

エクセルの質問です シート1のA1のセルにリストボックスがあり、50人ほどの人名が表示されるようになっています。 シートはそのリストの人数分(50ほど)あり、各シートごとに1人分の情報が載っています。各シートのB1には人名が入力されています。 前はシート数が少なく、その人のシートを探すのは簡単だったのですが、人数が増え大変になってきました。 お聞きしたのは、たくさんあるシートの中から、シート1のリストボックスで選んだ人名のシートへ飛びたいのです。 さらに、そのシートの人名が入力されているB1まで飛べたら最高です。 そういう事はできるのでしょうか? お分かりの方がいらっしゃれば助けてください。 オフィスは2003です。 よろしくお願い申し上げます。

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

  • ベストアンサー
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

VBAの力を借ります。 シート1の名前のタブをクリックして、コードの表示 VBエディターが起動しますので Private Sub Worksheet_Change(ByVal Target As Range) If Target.Address = "$A$1" Then Worksheets(Range("A1").Value).Select End If End Sub をコピィして閉じてください。 A1セルの値が変更されるとA1セルに表示されているシートへ移動すると思います。

その他の回答 (4)

  • izmlz
  • ベストアンサー率55% (67/120)
回答No.5

 マクロでツールバーでシート一覧を表示させ、選択したシートを表示させる、というのはいかがでしょうか?  その方法については、↓のページに書いてあります。サンプルファイルも置いてあります。 エクセル技道場-マクロでツールバー作成 http://www2.odn.ne.jp/excel/waza/toolbar.html#SEC18  目次シートで、各シートへマクロやハイパーリンクで飛ばすのは、飛ばすのはいいのですが、飛んだ先のシートから別のシートに飛ぶ際に、目次シートに戻ってから別のシートに飛ぶ、というふうにする必要があります(各ページに各ページへの目次は作成しないと思うので...)。  ツールバー方式だと、一回、目次シートに帰る必要がありません。

参考URL:
http://www2.odn.ne.jp/excel/waza/toolbar.html#SEC18
  • hige_082
  • ベストアンサー率50% (379/747)
回答No.4

質問の回答としては外してると思いますが・・・ 各シートごとに1人分の情報しかないんですよね? 各シート、表示項目がある程度同じなら データベース化してはいかがでしょうか? イメージ的には年賀状ソフトのようなものです 個人のデータを表で管理して、リストボックスで選んだ人のデータを表示する データベースに移行できれば 表示シートとデータシートがあればいいので、シートタグはスッキリ 人数の増減も行の追加削除で済みます 表示項目の変更も簡単になるので、人数が多くなれば多くなるほど手間が省けますよ 多分外してますよね ごめんなさい、読み飛ばしてください

回答No.3

HYPERLINK関数を使われたらいかがでしょうか。 シート名をそれぞれの人名にしておいて、シート1のA1の近くのセルに 次のような式を入力します。 =HYPERLINK("#"&A1&"!B1","Jump") リストで選択したら、"Jump" と表示されているセルをクリックします。

  • okormazd
  • ベストアンサー率50% (1224/2412)
回答No.2

Sheet1のコードモジュールに下記です。 Private Sub Worksheet_Change(ByVal Target As Range) If Target = Cells(1, 1) Then Worksheets(Cells(1, 1).Value).Activate Worksheets(Cells(1, 1).Value).Cells(1, 2).Select End If End Sub

関連するQ&A