• ベストアンサー

シート参照で変数を使いたい(EXCEL)

通常、Excelで別シートのセルを参照する時は「'シート名'!B3」といった数式になりますが、この「シート名」をユーザーに入力してもらうような仕組みを作りたいと考えています。 ・あるシートのA3(例)にシート名を入力すると、B4セルに入力されたシートのB3セルの内容が表示される このようなこと、可能でしょうか?

noname#61245
noname#61245

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

  • ベストアンサー
  • onlyrom
  • ベストアンサー率59% (228/384)
回答No.1

INDIRECT関数を使うといいでしょう。 セルA1に入力されたシート名の、セルB3を参照する場合    =INDIRECT(A1& "!B3") また上記ではセルB3が固定になってますが、 セルA1 に参照したい【シート名】をいれ セルA2 に参照したい【セル番地】まで入れておくと なお、使い勝手がよくなるかも知れませんね。    =INDIRECT(A1& "!" & A2)      

noname#61245
質問者

お礼

ありがとうございました! 無事解決しました。Excelの関数を覚えておかないとダメですね。

関連するQ&A

  • Excelのシート間の参照

    エクセル初心者です。 エクセルでシートが2枚あるものを作成しました。 一枚目のシートのA1のセルの内容(言葉)を 二枚目のシートのB3のセルの内容に参照させたいと思い B3を選択し、セルのなかに =を入力して 一枚目のシートのセルA1をクリックしようと思ってもクリックができません。 二枚目のシートのセルB3を同じ二枚目のシートのB10にあてようとして =を入力してB10をクリックすると参照ができます。 =B10 セル内は↑のようになります。 どうしてできないのでしょうか? 困っています.教えてください。

  • Excel 別シートのセルを参照させる時の疑問

    エクセルであるシート(A)のセルに、別シート(B)の特定のセルを参照させたい場合、(A)のセルに= を入力し、続けて(B)の参照させたいセルを選択すると、=の後に選んだシート名+「!」+セル名が表示されます。 同じ作業をいくつか続けて行っているのですが、一カ所だけ「=」のあとのシート名が 「'」マークでくくられます。 問題なく選択したセルの参照は行えるのですが、この「'」は何を表しているのでしょうか。 分かりにくいので例を書きますと、たとえば「sheetA」の「A1」を参照させた場合、 ケースその1 : =sheetA!A1 ケースその2 : ='sheetA'!A1 このような違いがあります。 お分かりになる方がいらっしゃいましたら、恐れ入りますがよろしくお願いいたします。

  • EXCEL 2003 数式中の参照セルについて

    数式であるシート(シート1とします)中の値として、 別シート(シート2とします)のセルを参照するとします。 (例a) シート1中の値 =シート2!J36 ※ J36は例 ここまではよいのですが、 上記の行番号「36」の部分を 更に別の参照値から引っ張ってくることは可能でしょうか? やりたいことのイメージ例として以下に記載します。 (例b) =シート2!J(=A1) ※ここの「A1」はシート2中の参照するセル番号を指定するための シート1中に設けたセルとします。 ※上記の数式は実際にはエラーになり入りません。 最初の例aでは、シート2中の参照するセル番号を数式編集して 指定しないといけないため、参照箇所が多いと大変ですが、 もし、例bのような指定ができればシート2中の参照するセル番号の 入力は一箇所ですみ楽になりありがたいと考えています。 わかりにくい文章ですみません。よろしくお願いします。

  • シートの順番による参照

    エクセルに「Monday」から「Sunday」まで7枚のシートがあったとして、別シートのA1に「1」とあれば、1枚目の「Monday」のシートのB1の数字を、「5」とあれば5枚目の「Friday」のB1の数字を参照するようにB1に数式を入れたいのですが、それを可能にする数式はあるでしょうか? VBAの場合はシート名に関わらずSheet(x)でx枚目のシートを参照するようにできますが、同様の事を数式でできるのでしょうか? 別のシートにMondayからSundayまでのリストを作っておいてIndex関数でシート名を呼び出してIndirect関数を使う方法もあるのでしょうが、別リスト等を使わないで完結する方法を教えてください。

  • EXCEL 一覧シートから各シートへ参照

    現在シートが 一覧、1、2、3、 とあります。 一覧シートには、 シート名(A1) 名前(B1) 1(A2) 山田(B2) 2(A3) 鈴木(B3) 3(A4) 木村(B4) と記載されております。(カッコ内は、セルの位置です) シート 1 のA1には、山田 シート1のB2を参照 シート 2 のA1には、鈴木 シート1のB3を参照 シート 3 のA1には、木村 シート1のB4を参照 とシート 一覧から参照して表示されるようにしたい と考えております。 数字の名前のシートが数個であればシート毎に入力すれば済む話ですが、 予定では、順次増え、最終的には100位になる予定です。 数式、マクロ VBA 等を使って  一覧シートに名前を入力すると該当のシートのA1セルに参照させる事は可能でしょうか? よろしくお願いいたします

  • 別のシートを参照したくても、参照できない

    エクセル2002を使っています。  Sheet1のB1セルに、同ブック内の「あいうえお」というSheetのA1セルをリンク・・というか、参照をしています(あいうえお!A1)と。  そして、同ブック内に かきくけこ さしすせそ たちつてと・・・と、後9シート作る予定だったので、前もってSheet1に同じく かきくけこ!A2 さしすせそ!A3 たちつてと!A4 と入力していました。  そして、シートを新たにい9つ作り、シート名を かきくけこ さしすせそ・・・ にしたのですが、みな#REF! のままなのです。  どうやったら、参照がうまく出来るようになるのでしょうか?  もうすでにシートも作り、参照もしてあるので、一から打ち直すのは面倒です。  何か対策は無いでしょうか?  

  • EXCELで別シートのセルを参照する場合について

    EXCELで別シートのセルを参照したいのですが… 参照先のセルの行が飛び飛びのため、数式をどのようにしたらよいかわからず困っています。入力するセルの数も大量のため、一つ一つ参照入力するには手間がかかりすぎるため、何かしらの関数で対応できないでしょうか。 具体的には シートAのM8~CE8 に、シートBの G50 J50 M50 P50…と3列ごとに参照した数字を返したいのです。 どなたかご教示いただけますと幸いです。 よろしくお願いいたします。

  • Excel2007 参照先のワークシートをリストから選択したい

    いつもお世話になっております。早速ですが質問させてください。 すべて同一ブック内で、の前提です。また、VBAはなるべく使いたくありません。 ・Sheet1に従業員名簿があります。A列が氏名欄となっており、A列中のデータが入っている範囲の名前を「氏名」としています。 ・Sheet3以降は、1ワークシートに1名分の人事情報が入っています。 シート名は各従業員の氏名になっています。 (例:Sheet3:「山田太郎」、Sheet4:「田中一郎」・・・・) ・Sheet2のA1セルに、入力規則で「ドロップダウンリストから選択」を設定し、Sheet1の「氏名」をリストの範囲として設定しています。 やりたいこと: Sheet2のA1セルで、ドロップダウンリストから従業員名を選ぶと、 Sheet2のA2セルに、当該従業員毎のワークシートのセルB11の内容 (数値)が表示される。 たとえば、参照先が固定ならば =山田太郎!B11 で簡単に参照できるのですが、 これを =A1!B11 としても =T(A1)!B11 としても、希望の動作をしてくれません。 「値の更新:A1」というダイアログが出てきまして、どうやら参照先を 指定せよ、らしきことを言われてしまいます。 駄目元で、=TEXT(A1)!B11 とか =VALUE(A1)!B11なども試してみましたが うまいこといきません。 どなたか、(長くなっても良いのでなるべく数式で)解決方法を 教えていただけますと非常にありがたいです。 よろしく御願いいたします。

  • 【Excel】数式(参照するシートの変更)について

    Excel2003を使用しています。 あるファイルに『1月』『2月』…『12月』『決算』という 13枚のシートがあります。 『決算』シートのB8セルに「=IF('9月'!B6="","",'9月'!B6)」と数式が 入力されていて、この数式の中の参照するシートを9月→10月に 変更する場合、数式を9→10に書き換えてコピペする作業以外の 方法というのはあるのでしょうか? 同様の数式がB8:O45の範囲(1ページ目)に入力されていて (いくつか空欄のセルもありますが)これが20ページありますので 何か良い方法があれば教えていただきたいです。 (参照するシートと行が2行ずれているのも作業がしづらいところです) よろしくお願いします!

  • Excelのシート間の参照

    Excelでシート間のセルの参照をしたいのですが、どのシートを参照するのかを すぐに変えることのできるようにしたいのです。 具体的には、A、B、Cという名前のシートがあり、シートDにおいて A1セルにA、B、Cいずれかの文字を入力すると、その下のセルの参照先が シートAのB1セルになるようにしたいのです。 とりあえず色々式を入れてみたのですが、すべて拒否されてしまいました。 たとえば ='A1'!B1 ='"A1"'!B1 とかです。 よろしくお願いします。

専門家に質問してみよう