• ベストアンサー

エクセル VLOOKUPについて

こんにちは。 下記のような表を作りVLOOKUP関数で計算式を作ってみたのですがご覧のようにうまくいきません。 Sheet1のC5に数字を入れた時にSheet2のB・C・Dの数字をSeet1のE5~E7までそれぞれ引っ剥言ってくるようにしたいのですが どう計算式を作ればうまくいくでしょうか。 詳しい方アドバイスよろしくお願いいたします。

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

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7940)
回答No.3

E5に =IFERROR(VLOOKUP(C$5,Sheet2!A:D,ROW(E2),FALSE),"") のようにして,下向けにコピーします。 もちろんもっと判りやすく, E5には =IFERROR(VLOOKUP(C$5,Sheet2!A:D,2,FALSE),"") E6には =IFERROR(VLOOKUP(C$5,Sheet2!A:D,3,FALSE),"") E7には =IFERROR(VLOOKUP(C$5,Sheet2!A:D,4,FALSE),"") と丁寧に入れていけば,間違える事もありません。

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

その他の回答 (3)

回答No.4

「#REF!」というエラーが出ていますね。これは、VLOOKUP関数の第3引数で指定される「列番号」が、第2引数で指定される「範囲」の外にはみ出しているときなどに出るエラーです。 解像度の関係でよく見えませんが、添付図では、第3引数に「COLUMN()」と書いていますか?そうであれば、図ではE列なので、「5」と書いてあるのと同じです。つまり、第3引数を1~4の整数に書き換えれば、とりあえずエラーは出なくなりそう。 1~4とは書かず可変にしつつ、E5:E7の範囲に入力するつもりなら、COLUMN関数というより、どっちかっていうとROW関数ですね。他の回答者さんが書かれているとおりです。通常、より式が短くなるように、Sheet2ではなくSheet1の行列番号を利用して式を記述します。質問者さんが書かれている式においてもCOLUMN関数は、「sheet2!」とは書いてないので、Sheet1のE列の番号を返しています。

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

回答No1です。 勿論次の式でもよいですね。 =IF(COUNTIF(Sheet2!A:A,C$5)=0,"",VLOOKUP(C$5,Sheet2!A:D,ROW(A2),FALSE)) 下方にドラッグコピーする場合には列番号を絶対参照の形にする必要がありませんね。C5セルについては行番号について絶対参照の形にします。

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

次の式をE5セルに入力しE7セルまでドラッグコピーします。 =IF(COUNTIF(Sheet2!$A:$A,C$5)=0,"",VLOOKUP(C$5,Sheet2!$A:$D,ROW(A2),FALSE))

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

関連するQ&A

  • エクセル VLOOKUP関数?を使ってこのような事が出来るか知りたいです。

    Sheet1の2行目A~D列に 1 2 5 8と入っています。 Sheet2の   〃   に 3 2 5 9と入っています。 Sheet3の   〃   に 9 3 5 1と入っています。 Sheet4のA1にSheet1 と入力した際、B1~E1のセルに、Seet1に入っていた 1 2 5 8と表示させたいのですが、出来ますでしょうか? 私が思うにVLOOKUP関数?と思いますが、どんな式にしていいのかわかりません。 それか、他の関数の場合はどうすればいいのか?付け足さなくてはいけな出来ないものがあればそれも知りたいと思います。 宜しくお願いします。

  • 【エクセル】VLOOKUPが上手くいきません。。。

    VLOOKUP関数がうまくいかないので教えてください。 下のような表になっています。    A     B    C    D    E    F 1  番号  名前               コード 2 11-2345  ABC  11  #N/A  11  あああ 3 22-3456  DEF  22  #N/A  22  いいい  4 33-4567  GHI  33   #N/A  33  ううう 5 44-5678  JKL  44        44  えええ 6 ・・・・ ・・・               55  おおお 7 ・・・・ ・・・               66  かかか A、B列はがもとから打ち込んであるデータです セルC2は =LEFT(A2,2) でA列のハイフンの前を表示しています。 セルD2に =VLOOKUP(C2,$E$2:$F$7,2,FALSE) を入れると#N/Aが表示 されます。ちなみに、セルC2にLEFT関数ではなくて、数字をそのまま、 11と入力すると、セルD2に「あああ」と表示されます。どこがいけない のでしょうか? $E$2:$F$7はC列の二桁の数字に対応するコードの表になっています。 エクセル2003を使っています。

  • エクセルでVLOOKUP関数でエラーが出ました教えてください

    ある表を作り、違うシートに工種コードの表を作り 下記の関数を作ってみました =VLOOKUP(B5,工種コード!$C$2:$D$129,2,FALSE) すると #N/A このエラーが出ます ちゃんと表示されるところもあるのですが どうすれば良いか分かりません 教えてください

  • 【エクセル】 VLOOKUPについて

    エクセル関数の VLOOKUPは範囲選択した表の左端の列しか検索対象に出来ないのでしょうか? 例えばSheet1に↓のような表があって     A      B     C     D     E 1 機種名   購入日   シリアルNo   メーカー名  ・・・・  2  X     07/01/01   123X         LLL 3  Y   07/02/03    456Y       MMM 4  Z   07/05/21    789Z        NNN 5  ・・・ 6  ・・・ Sheet2に↓のような表を作って、   A     B 1   シリアルNo   機種名 2   456 3   789  4   123 5    432 B列にVLOOKUPでsheet1の表から、シリアルNoに対応する機種名を表示 させることは出来ますか? 特にVLOOKUPにこだわってるわけではないので、他の方法でも出来る のであれば良い方法を教えてください。よろしくお願いします。

  • エクセル VLOOKUP について

    エクセル関数について教えてください。 通常VLOOKUPは元データの右側の検索だと思いますが 左右両方への検索出来る方法はありますか? 例えば下のような配列の元データ(sheet2)があったとします。   A   B  C   D   E 1 あ  い  う  え  お 2 か  き  く  け  こ 3 さ  し  す  せ  そ sheet1の表「う(C1)」からの検索で左側の「あ(A1)」も右側の「お(E1)」も検索し、sheet1へ表示出来るようにしたいです。 仕事での管理書式で使用したいのですが、元データが客先支給なので配列が変えられません。 VLOOKUPにこだわってませんので何か方法はありますか? よろしくお願いします。

  • VLOOKUP関数について

    VLOOKUP関数についてお尋ねいたします。 VLOOKUPで、下記のような事ができるでしょうか。 1 11 a 1 12 b 1 13 c 2 11 d 2 12 e 2 13 f 2の11を選択すると『d』を 引っ張ってくる。 よろしくお願いします。

  • エクセルのVLOOKUPで困っております

     エクセルを使用して表1のような原価計算表を作っております。 単位と単価については別シート(表2)から引っ張ろうとしております。  表1の材料名をキーに表2から単位、単価を引っ張ってこようと表1の 単位、単価にVLOOKUPを使用してみたのですが正しい値を引っ張って こず表1のように「牛乳」を表2の「たまねぎ」から「卵」を「紅茶」 からそれぞれ別の行の値を引っ張ってきてしまいます。ちなみに式は表 1のC2でしたら=IF(A2="","",VLOOKUP(A2,表2!A:C,2,1))、D2でしたら =IF(A2="","",VLOOKUP(A2,表2!A:C,3,1))、といれております。  おそらく単純なミスかと思いますが、自分では見当がつきません。ど こがおかしいのか教えていただきたくお願いいたします。 表1   A     B     C     D     E 1 材料名  量   単位  単価   金額 2 牛乳   0.7    1個   50    35 3 卵     20    1杯   20    400 表2   A       B   C 1 いか     1杯  120 2 牛乳     1L  180 3 卵      1個  20 4 たまねぎ  1個  50 5 紅茶     1杯  20

  • Exeilで

    教えてください エクセルでシート1からシート2の数字をVLOOK UPで検索してきて 検索してきた数字と シート1で入力してある数字と引き算する計算式を入れました シート2の検索で数字が入っていたり 入っていないときがあります 入っているときは、計算するのですが 入っていないときは #N/Aのエラーがでてしまい計算されません この場合 シート2に数字が入っていない場合 0 を返すとか 数式はあるのですか この場合VLOOK UP じゃないほうがいいのですか バージョン2000です SEET1 A   B   C    D コード 数字  数字  数字 100  20  数式  SEET2 SEET2のコード100番を VLOOKUPで検索し SEET1の Dに 入れ C=B-Dの数式を入れていますが SEET2で100番が ないときに #N/Aのエラーがでてしまいます この時SEET2に コード100番がないときは 0を返すとかはできるのですか? もっといい方法はあるのですか? 教えてください

  • ExcelでのVLOOKUP関数について

    キー1を1000倍したうえで完全一致のVLOOKUP関数を使うと#N/Aエラーが発生します。 表示上は同じように見えますが内部的に異なる値となっているのでしょうか? 試しにエラー行に対して、キーとターゲットとなる当該セルを「=」でつないで確認しても「TRUE」となります。 添付画像は、 検索先としてA列に基準キーを130.168~130.192(step 0.001)で各行へ入力し、B列はA列を1000倍、C列はB列をROUND関数で整数値に丸めたものをキーとしました。 D列にVLOOKUPで参照する値を入力し、E列以降で以下の異なるパターンで値を参照しています。 (1)【E・F列】 ・E列に整数値をキーとして130168~130192(step 1)で入力。 ・E列をキーとしてB~D列のVLOOKUP関数としています。   『=VLOOKUP(E3,B:D,3,FALSE)』 (2)【G・H列】 ・G列にE列/100をキーとして計算。 ・G列をキーとしてA~D列のVLOOKUP関数としています。   『=VLOOKUP(G3,A:D,4,FALSE)』 (3)【I列】 ・E列をキーとしてC~D列のVLOOKUP関数としています。   『=VLOOKUP(E3,C:D,2,FALSE)』 シートを複製し、キーの入力範囲を0.001~0.025(E列は1~25)にした場合はエラーがでませんでした。 その他の確認としてはTEXT、JIS、ASCなどを組み合わせて文字列としたキー同士のVLOOKUPではエラーにならず値を参照できています。

  • エクセルのVLOOKUP関数についての質問です。

    エクセルのVLOOKUP関数についての質問です。 Sheet1、Sheet2、Sheet3が3種類あります。 例えば、Sheet3は$B$5:$E$54まで下記のようなデータが入っています。 B       C     D      E 東京ホテル  品川   03-111222  03-111333 大阪ホテル  梅田   06-555666  06-555777  ~ Sheet1のB1にドロップダウンを作り、Sheet3のB列にあるホテル名を選べるようにする。(ここまではできています。) ドロップダウンで「東京ホテル」と選ぶと、Sheet3のD1の情報(03-111222)をSheet2のH1のところに自動表示したい。 追伸 Sheet2のH1に記載すべきVLOOKUPプログラムが誤っているため、 Sheet2のH1には#N/AというエラーMSGが出ます。 今日丸1日色々と試したのですが、実現できませんので、 何卒お力をお貸しください。

このQ&Aのポイント
  • Wi-FiルーターのWRC-1167GHBK2-Sを使用しており、最近インターネットに接続できなくなりました。
  • ルーターを確認すると、2.4Gと5Gが白点滅しており、電源を再起動しても状況が改善されません。
  • 携帯とWi-Fiは繋がるが、インターネットは接続されていない状態です。対処方法はありますか?
回答を見る

専門家に質問してみよう