• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:2つの文字列に合うデータ取り出しについて)

2つの文字列に合うデータ取り出しについて

このQ&Aのポイント
  • A列に氏名、B列に旅館名、C列に部屋番号、D列を作り(=B+C)として他上記、G列に=VLOOKUP(旅館名&室番,$C$2:$D$100,2,FALSE)としましたがうまく行きません。
  • データソートすればよいのですが、それではやりたい事にはならないのです。
  • 旅館名と部屋番号に合う名前を取り出すために、E列に旅館名、F列に室番、G列に氏名という表を作成しました。

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.2

添付の図のようにしてください。 A2には↓の式を入れて下方向にコピー =C2&D2 G2には↓の式を入れて下方向にコピー =IF(COUNTIF(A:A,E2&F2)=0,"",VLOOKUP(E2&F2,A:D,2,FALSE))

kyon0512
質問者

お礼

A:氏名、B:旅館名、C:部屋番号、D:検索キー、E:旅館名、F:部屋番号、G:式 =IF(COUNTIF(D:D,E2&F2)=0,"",VLOOKUP(E2&F2,C:D,2,FALSE)) どこか駄目でしょうか?それとも検索キーはA列でないといけないとか? よろしくお願いします。

kyon0512
質問者

補足

早速の解答ありがとうございます 出来ることは出来たのですが、A列をC列の次に入れたりすると出来ないでしょうか? E2&F2はA列に作らないと駄目でしょうか? やっても、出来ないみたいなので。 それからA:D,2,FALSE、この2は何列目をさしているのでしょうか? よろしくお願いします

その他の回答 (3)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.4

>=IF(COUNTIF(D:D,E2&F2)=0,"",VLOOKUP(E2&F2,C:D,2,FALSE)) どこか駄目でしょうか?それとも検索キーはA列でないといけないとか? VLOOKUP関数の検索値をE2&F2と結合した文字にする場合は、検索範囲の一番左の列にこの文字列が無いとダメです(提示された数式ではC列に検索文字列がありD列に名前があるパターンの数式になっています)。 このようなケースではVLOOKUP関数の代わりに、以下のようなINDEX関数とMATCH関数を組み合わせて利用することになります。 =INDEX(A:A,MATCH(E2&F2,D:D,0)) ちなみにD列の結合補助列を使用せずに直接名前を表示したい場合は、以下のような配列数式を使用することになります。 =INDEX(A:A,MIN((($B$2:$B$100<>E2)+($C$2:$C$100<>F2))*10000+ROW($2:$100)))&"" 配列数式ですので、入力後Ctrl+Shift+Enterで確定してください。

kyon0512
質問者

お礼

解答ありがとうございます。 やはり一番左の列にないと駄目なんですね。 わかりました。

回答No.3

旅館、部屋番で全ての名前をリストしたいダケ?

kyon0512
質問者

補足

いえ、そこから別のシートに作っている平面図に自動で転記させたいのです。 よろしくお願いします。

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

こんな具合に作成します: A1に「検索キー」と記入 A2に =C2&D2 以下コピー B1に「氏名」と記入 B2以下にお客様名を列記 C1に「旅館名」と記入 C2以下に宿泊先を列記 D1に「室番」と記入 D2以下にお部屋を列記 E列に旅館名を繰り返し列記 F列に室番を列記 G2には =IF(COUNTIF(A:A,E2&F2),VLOOKUP(E2&F2,A:B,2,FALSE),"") と記入,以下コピーで完成。

関連するQ&A