• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのリストの関連付け)

エクセルリストの関連付け方法とは?

このQ&Aのポイント
  • エクセルのリストの関連付けについて、手作業ではなく関数を使って対応する方法があります。
  • ファイルAのD列にはID+文字列のリストがあります。
  • ファイルBのB列にはファイルAのD列のID部分だけがあり、C列にはコメントがあります。

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

  • ベストアンサー
  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.2

>質問例の一番上のケースは、1つのセルに複数の行が入っているのですが、 1つのセルに複数の同種情報を入れることはデータベースとしての運用上好ましくありませんのでデータ入力方法を改善すべきです。 IDがセル内の何処に有るかを定義できる状態を探さなければなりません。 質問の例ではファイルAのD列でIDの先頭に"-"が有るので、その位置の次から5桁がIDとすれば関数式で対応できます。 D列の改行が1ヶ所(2行)であればそのままの状態でも以下の関数式で良いと思います。 3行以上になるときはあなたの応用力で対応してください。 =IF(IFERROR(FIND(CHAR(10),D2),0),VLOOKUP(VALUE(MID(D2,FIND("-",D2)+1,5)),[Book2]Sheet1!$B$1:$C$4,2,FALSE)&CHAR(10)&IF(IFERROR(FIND(CHAR(10),D2),0),VLOOKUP(VALUE(MID(D2,FIND("-",D2,FIND(CHAR(10),D2))+1,5)),[Book2]Sheet1!$B$1:$C$4,2,FALSE),"")) 改行マークはCHAR(10)でありセル内データの1行目と2行目の境に必要です。 結果の表示が2行にならないときはセルの書式設定で「文字の制御」の「折り返して全体を表示する」にチェックを入れます。

harumi9999
質問者

お礼

どうもありがとうございます。ログインできなくなってしまい、お礼が遅くなり申し訳ありませんでした。 できました!

その他の回答 (1)

  • bunjii
  • ベストアンサー率43% (3589/8249)
回答No.1

>関数で対応可能でしょうか? 可能です。 AファイルはBook1とします。 BファイルはBook2とします。 Book2のB列に入っているIDの値は文字列ではなく数値としたとき次の式をAファイル(Book1)のE2に入力し、下へオートフィルでコピーします。(IDは右側から5桁固定とした) =VLOOKUP(VALUE(RIGHT(D2,5)),[Book2]Sheet1!$B$1:$C$4,2,FALSE) 貼付図の上がBook1で下がBook2のSheet1です。

harumi9999
質問者

お礼

どうもありがとうございます。 質問例の一番上のケースは、1つのセルに複数の行が入っているのですが、この場合はセルをわけないといけないでしょうか? その作業は手動になりますか?

関連するQ&A