• ベストアンサー

VLOOKUP関数の範囲に、複数の範囲を指定したい

VLOOKUP関数の範囲に、複数の範囲を指定したいのですが方法がわかりません。 例えば同じシート内のC3:L8の範囲とM3:V8の範囲とW13:AF18の範囲を同時に 検索範囲として指定したいと考えております。 選択範囲に名前をつけて定義し、それを範囲として指定してみても、 なかなか上手くいきません。 効果的な方法があれば、御教鞭頂きたく思います。

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

  • ベストアンサー
  • suekun
  • ベストアンサー率25% (369/1454)
回答No.3

ごめんなさい。手抜きですね。 以下が条件です。 検索値がA1にある 検索範囲の中で検索値に合致する値が複数ない =IF(ISERROR(VLOOKUP(A1,C3:L8,2,0)),IF(ISERROR(VLOOKUP(A1,M3:V8,2,0)),IF(ISERROR(VLOOKUP(A1,W13:AF18,2,0)),"",VLOOKUP(A1,W13:AF18,2,0)),VLOOKUP(A1,M3:V8,2,0)),VLOOKUP(A1,C3:L8,2,0)) 最初の範囲で検索値に一致する物がなければ、次の範囲を探します。 その繰り返しです。 最終的にどこにもなければ空白です。 返す値の列番号は範囲の中で左から2番目です。 たとえば最初の範囲なら、D列の値が帰ります。

その他の回答 (4)

  • maron--5
  • ベストアンサー率36% (321/877)
回答No.5

◆こんな方法はいかがでしょうか? =IF(COUNTIF(C3:C8,A1)+COUNTIF(M3:M8,A1)+COUNTIF(W3:W8,A1),VLOOKUP(A1,IF(COUNTIF(C3:C8,A1),C3:L8,IF(COUNTIF(M3:M8,A1),M3:V8,W3:AF8)),10,0),"")

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

VLOOKUP関数は複数範囲を指定できません。 エクセルにおいて、何でも、したけりゃできる(方法がある)というものではありません。 Match関数なども同じ。関数で複数列をカンマででも区切って記述できるのは、SUM関数のほか極く少数です。そこまで進歩していない。 便法で結果的に既出回答で、2つぐらいまでなら式に書けるということです。 検索表の行数が固定であれば関数式を使ってでも、作業列に1列にまとめ、その列を検索する方法もある。 数字の場合、A列の後にB列をつなぐ関数 =IF(ROW()<=COUNT(A:A),A1,INDIRECT("B"&ROW()-COUNTA(A:A)))

回答No.2

IF関数と組み合わせればよいのでは? たとえば、 IF(B193=1,VLOOKUP(B193,C197:E203,2),VLOOKUP(B193,E199:G204,2)) これは、もしB193が1のときはB193にある値と同じ行のC197:E203にある2番目(探す値がある左端のセルを含む)の数字を持ってきて、それ以外であれば、E199:G204の範囲で2番目の値を持ってくると言うものです。 参考になりましたか? ちなみに、IFの中に更にIFを使えば、もっと多くの検索が出来ると思います。

  • suekun
  • ベストアンサー率25% (369/1454)
回答No.1

たとえばエラー回避でネストする。 IF文で構成して、IF(ISERROR(VLOOKUP(最初の範囲)、IF(ISERROR(VLOOKUP(次の範囲・・・・とか 範囲の中で検索値がなければ次の場所を検索する。

関連するQ&A

  • エクセルの関数で複数のシートにまたがって範囲指定する方法

    VLOOKUP関数の、[範囲]の項目の入力方法について質問です。複数のシートにまたがって同一範囲のセルを指定したいときはどうるれば良いですか?通常は=VLOOKUP(検索値,'[ファイル名]シート名'!範囲,列番号,検索の型)ですが、シートは複数にまたがり範囲が同一の場合は式はどうなりますか?

  • VLOOKUP関数での範囲指定値が複数のシートにまたがる場合

    お知恵をお貸しください。 エクセルの初心者です。 VLOOKUP関数を使用して値を求めたいのですが、範囲が複数のシートにまたがっています。どのようにすれば求めることができるのでしょうか。 よろしくお願いいたします。

  • VLOOKUP関数の範囲をセルで指定したいと思っています。

    VLOOKUP関数の範囲をセルで指定したいと思っています。 B1:参照シート名(VLOOKUP関数で使用する範囲があるシート) C2:範囲の開始位置 E2:範囲の終了位置 B3:G3:列番号(B3の値は、B6:B8の範囲で使用する列番号、 D3の値は、D6:D8の範囲で使用する列番号) これらのセルに入力された情報をもとにB6:G8の範囲にVLOOKUP関数を 反映させたいと思っています。 例えば、 B1に参照シート名「2ケタ」 C2にVLOOKUP関数の範囲の開始位置「A5」 E2にVLOOKUP関数の範囲の終了位置「G7」 B3に範囲の列番号「2」がある場合 B6に「=VLOOKUP(A6,'2ケタ'!A5:G7,2,0)の関数を入力。 B2に参照シート名「3ケタ」 C5にVLOOKUP関数の範囲の開始位置「B5」 E2にVLOOKUP関数の範囲の終了位置「H7」 C3に範囲の列番号「3」がある場合 C6に「=VLOOKUP(A6,'3ケタ'!B5:H7,3,0)の関数を入力。 といった感じです。 現在、B6に「=VLOOKUP($A6,INDIRECT($B$1&"!a5:g7"),INDIRECT("$b$3"),0)」と 関数を入力して、VLOOKUP関数の「範囲の参照シート名」と「列番号」の情報は セルから持ってくることができました。 しかし、「a5:g7」という範囲だけは、INDIRECT関数をうまく入れることができません。 どのように関数を入力したら、上手くいくのか、教えていただけないでしょうか。

  • VLOOKUP関数について

    VLOOKUP関数についてですが、検索値が複数ある場合 例) =VLOOKUP(c2,Sheet1!$A$3:$A$1687,3,FALSE) 例えば、検索値c2の箇所が複数あった場合は、範囲指定と同様に選択範囲で囲むとよいのでしょうか? またその時に、絶対参照(F4)をした方がよいのでしょうか? よろしくお願いいたします。

  • VLOOKUP 範囲の複数列指定

    vlookupは指定範囲の左側だけを検索しますよね。 そこを、範囲を指定した場所全てを検索して、指定した列の文字を返すことはできますか?別に他の関数を併用した方法でもかまいません。

  • VLOOKUP関数はなぜ範囲指定が必要なの?

    VLOOKUP関数はVLOOKUP(検索値,範囲,列番号,検索の型)という使い方です。 範囲という項目は、検索先の列を指定すればよいと思うのですが、なぜ範囲指定になっているのでしょうか? ”仕様です”という回答は不要です。 よろしくお願いします。

  • VLOOKUPの範囲

    教えてください!!!! EXCEL関数のVLOOKUPの引数で、「範囲」を複数のシートから参照することは可能でしょうか?また可能であればその数式も教えてください。 よろしくお願い致します。

  • =COUNTIF関数で複数の範囲を指定できないでしょうか

    =COUNTIF関数で複数の範囲を指定できないでしょうか 例えば N3:P5 Q3:V3 N6:N11の範囲に3がいくつあるかを数えたいのですが 3つをカンマで区切って指定しただけではエラーになってしまいます COUNTIF関数を3つならべて合計すれば目的は達せられそうですが もう少しスマートな方法はないものか アドバイスよろしくお願いします ちなみにExcel2007です

  • VLOOKUP関数 複数シート

    OSはXPです(officeXP Professional) VLOOKUP関数を使用して あ~わのシート10枚のシートを作成して、その結果を『検索シート』に表示したいのですが 複数シートの範囲は何枚まで可能なのでしょうか

  • VLOOKUP関数、複数のシートのデータを足すには?

    VLOOKUP関数などを使って以下のような形式のものを作りたいと思っていました。しかし、googleやこのサイトなど色々と調べてみたのですが、分からなかったので、質問させて下さい。よろしくお願いします。 ■状態■ (1)“シート1 ”にチーム名とそれに付随するコード一覧 (2)“シート2~”に毎週の試合結果  但し、“シート2~”の組み合わせは毎週ごと異なり入力の手間を省く為“シート1”からチーム名をVLOOKUP関数で拾ってくる。 (3)“シート2~”に毎週の試合結果(得点、失点、勝ち点)を一つのシートにまとめたい(足していきたい) 例)“シート1”に「 =VLOOKUP($C2,第1節!$A$2:$K$20,9,0)+VLOOKUP($C2,第2節!$A$2:$K$20,9,0)・・・ 」このように足して行く方法しか分からない。   $C2は、すべて同じ検査値(文字)   $A$2:$K$20の並びは、毎回異なる ■疑問■ ・“シート1”にVLOOKUP関数を「足し算」している点を改善したい。 具体的には、各シートの「検索範囲」は同じでも、複数シートなので複数の検索範囲を1つのVLOOKUP関数で設定することは、不可能なのか?また、他の方法は? ちょっと複雑なので、上手く説明が出来ませんで分かり難かったと思います。失礼しました。 実際に作成したエクセルを下記URLにUPしましたので、良ければ拝見していただければと思います。VLOOKUP関数など詳しい方いましたら、よろしくお願いいたします。  http://rossana75jp.at.infoseek.co.jp/j_2007.xls

専門家に質問してみよう