• ベストアンサー

値によって参照先を変えたい

図のように、商品の種類ごとに生産者が記載されているマスタデータが複数あります。 検索値をコードとしながら、商品によって、参照するマスタを変えながら 生産者をそれぞれのマスタから引っ張ってくることはできるでしょうか。 商品がりんごなら、シート名「りんご生産者」からコードを検索値として生産者を表示。 商品がみかんなら、シート名「みかん生産者」からコードを検索値として生産者を表示。 という感じです。 どなたか助けてください。

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

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率65% (1622/2462)
回答No.2

エクセル2007以降でしたら =IFERROR(VLOOKUP(A2,INDIRECT(B2 & "生産者!$A$1:$C$4"),3,FALSE),"") 2007より前でしたら =IF(ISERROR(VLOOKUP(A2,INDIRECT(B2 & "生産者!$A$1:$C$4"),3,FALSE)),"",VLOOKUP(A2,INDIRECT(B2 & "生産者!$A$1:$C$4"),3,FALSE)) として下にコピーしてください。 またそれぞれのマスタデータ範囲に名前つけして参照することもできます。 それぞれりんご、みかん、ぶどうと名前付けして =IFERROR(VLOOKUP(A2,INDIRECT(B2),3,FALSE),"")

その他の回答 (3)

  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.4

これの応用です

参考URL:
http://trendy.nikkeibp.co.jp/article/lecture/20040322/108254/
  • kkkkkm
  • ベストアンサー率65% (1622/2462)
回答No.3

No2です。 名前付けする場合「範囲」はブックにしてください。

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.1

C2 =IF(A2="","",IFERROR(VLOOKUP(A2,INDIRECT(B2&"生産者!A2:C10"),3,FALSE),"該当なし"))

関連するQ&A

  • 「Excel・VBA」sheet1にあるリスト通りに、別シートの請求書内容を置き換えたい

    こんばんは! 明日仕事で使う為に、昨晩から色々試してるのですが 知恵をかして頂ければと思いますm(__)m エクセルのブックに sheet1と複数の請求書のsheetか存在します。 sheet1は請求書に必要な情報が入ってます。(データベースのようなものです)  会社名(1)  商品名(1) 商品名(2) 商品金額(1) 商品金額(2) 1 ○○商事 りんご   みかん    200    100 2 ○○会社 りんご   みかん    250    150 請求書は、取引先独自の請求書が100種類くらいあります。 なので、書式は様々です。 しかし、記載する内容は同じものなので、 例えば、請求書に 会社名(1)と入っていたら(○○商事)            商品コード(1)と入っていたら(りんご)          商品金額(1)と入っていたら(200)などと 置換していく方法はないでしょうか? 商品の種類も3種類しかないので、右に項目を作ってます。 ただ請求書の種類が多いもので・・・ 途中まで数式を組んだりマクロの記録で試したのですが VLOOKUPの数式が残ってしまったり、 次の会社に進んでくれなかったりで VBAの知識が乏しく調べてもわかりませんでした。 私もまだ調べながら作りますので もしおわかりになる方いらっしゃいましたらよろしくお願いいたします。

  • Access2010 レポートについて

    商品というテーブルと商品マスターというテーブルがあります。 商品テーブルに入力した商品コードをもとに、商品マスターから直接レポート上に単価の項目を呼び出したいのですが、どうすれば良いのですか? (両テーブルの商品コードが一致した場合、マスターテーブルの単価の項目を呼び出す) クエリで必要な項目を表示させ、レポートにするしか方法はないのでしょうか? 【商品テーブル】 商品コード   商品名      個数  123     りんご        10  456     みかん       20  789     バナナ       30 【商品マスター】 商品コード   商品名      単価  123     りんご       100  456     みかん       200  789     バナナ       300 【レポート】※商品テーブルをもとに 123   個数    単価 りんご    10    100 ←商品マスターから直接表示したい

  • Access2010 レポートについて

    商品というテーブルと商品マスターというテーブルがあります。 商品テーブルに入力した商品コードをもとに、商品マスターから直接レポート上に単価の項目を呼び出したいのですが、どうすれば良いのですか? (両テーブルの商品コードが一致した場合、マスターテーブルの単価の項目を呼び出す) クエリで必要な項目を表示させ、レポートにするしか方法はないのでしょうか? 【商品テーブル】 商品コード   商品名      個数  123      りんご        10  456      みかん       20  789      バナナ       30 【商品マスター】 商品コード   商品名      単価  123      りんご       100  456      みかん       200  789      バナナ       300 【レポート】※商品テーブルをもとに 123    個数    単価 りんご    10     100 ←商品マスターから直接表示したい

  • 複数条件に合致する場合のみセルを参照する

    複数条件に合致する場合のみセルを参照する関数式を探しています。   A B C 1 みかん イ 5 2 りんご ロ 3 3 いちご イ 2 4 みかん ニ 8 5 りんご ホ 6 上記のような表があって別シートに   A B C 1 みかん イ  と入れるとC1に『5』が参照値として表示されるような関数です。 複数の関数を組み合わせれば出来そうな気がするのですがわかりません。 どなたか教えて下さい。 よろしくお願いします。

  • Accessで、1つのマスターを複数のフィールドで参照する

    いつも大変お世話になっております。m(_ _)m Accessで以下のようなテーブルを作成します。 テーブル(1) ・生産部門コード ・販売部門コード ・AS部門コード テーブル(2) ・部門コード ・部門名 テーブル(2)はマスタになります。 00:A生産部 01:B生産部 11:A販売部 12:B販売部 みたいな情報が入っています。 テーブル(1)の「部門コード」は、テーブル(2)の値を参照して入力します。 この2つのテーブルをリレーションして、クエリで部門名を表示させたいのですが、1つのマスタ(テーブル(2))のコードを複数のフィールドで参照するとエラーになります。 このような場合、テーブル(マスタ)を3つ作らないとダメなのでしょうか? 要は、テーブルに部門情報を入力したいのですが、マスタは1つで良いということです。 よろしくお願いします。

  • エクセルでの特定の値・文字を抽出したいのですが・・

    初めて質問させていただきます。至らない点等もあるかと思いますがよろしくお願いいたします。 現在エクセル2010を使用しています        A列    B列     (略) E列 1行    コード   商品名        ★ここに「AP」と入力すると「りんご」と反映されたい。 2行     AP     りんご 3行     OR     みかん 見づらくて申し訳ないのですが、 特定の商品名に対して、コードのようなものを割り当て ほかのセルやほかのシートで割り当てたコードを入力し、商品名が表示されるような関数を入力したいのですが 調べてみてもわからず質問させていただきました。 ぜひともご回答よろしくお願いいたします。

  • エクセル2003の質問です

    エクセルでの質問です。  シート1にA1商品コード、B1に商品名、C1に在庫数、D1に生産者とした時に     A       B       C       D 1 商品コード 商品名  在庫数 生産者 2 1234   みかん1   3   太郎さん 3  456   みかん2   5   次郎さん 4  234    りんご1   1   太郎さん ・ ・ となっていて、シート2に太郎さんシート3に次郎さんとした時にシート1にランダムにデータを入力 した時、シート2、シート3へ反映させる方法が知りたいです。 シート2、シート3の表はシート1と同じです。

  • VBAの条件の異なるデータの取り出し

    参照元のシートの項目がリンゴ・ミカン・バナナ・スイカで一行づつ、それぞれの価格が記載されているとします。 <参照元シート>  名前 価格 リンゴ 100 ミカン 150 バナナ 200 スイカ 250 参照先のシートにはリンゴ・ミカン・バナナ・スイカの重さや大きさが複数行で記載されています。 <参照先シート> 名前  重さ 大きさ 糖度 リンゴ 50        ミカン 40 ミカン     50    バナナ     30 スイカ 200 スイカ     100 スイカ         50 別シートに下記のようにデータを取り出し、印刷後次の果実に切り替えて印刷したいのですがマクロはどのようになるのでしょうか。。 <別シート> ・名前 ・価格 ・重さ(記載の無い場合は無し) ・大きさ(記載の無い場合は無し) ・糖度(記載の無い場合は無し) ForとIFを使用して作成してみたのですが、参照先シートで複数項目がある場合に転記するマクロがわからず頓挫しております。。 (名前に対して重さや大きさが複数ある場合にデータを取り出し、次の名前を読みにいく部分がわかりません) マクロに明るい方いらっしゃればご回答いただけますでしょうか。

  • 条件によって参照範囲を変えたい。参照範囲が複数ある

    添付A~Dに正しい商品名が入っていないデータがあります。 それぞれ、商品の産地によって、商品コードまたは商品番号で管理されています。 青森と山梨は商品コード、愛媛と茨城は商品番号です。 商品コードと商品番号には、それぞれ別に正しい商品名が登録されているマスタがあります。 (G~HとJ~K) そこでE列に、産地によって、参照するマスタを変えながら、 正しい商品名を表示さえたいのですが、どのような式になるでしょうか。 ご教示お願いします。

  • エクセル初心者です。関数を教えてください

    例 商品名 入数 ケース数 みかん 50   30 みかん 40   25 りんご 25   35 のシートがあります。 別シート 商品名 入数 ケース数 みかん みかん りんご にVLOOKUPを使い 商品名からケース数を当てるときに みかんは入数で2種類あるのに上の50入の分しか出てきません 2つとも出すにはどうしたらいいでしょうか? わかりづらくてすみません。よろしくお願いします

専門家に質問してみよう