Excelで2つのファイルから完全一致のIDを抽出

このQ&Aのポイント
  • Excelで2つのファイルから完全一致のIDを抽出したいです。エクセルについて質問です。バージョンは「2010」です。
  • AファイルとBファイルには顧客データがあり、Bファイルは「A列…会社名」「B列…担当者名」「C列…取引先ID」「D列…取引先担当者ID」という内容です。Aファイルの方は新規の顧客とBファイルの顧客と重複してあります。それで、Aファイルの方に、Bファイルの方から「会社名と担当者名が一致」している取引先IDと取引先担当者IDを入力していきたいんです。
  • AファイルにはIDの列を2つ新規で作ります。簡単な方法を教えてください。
回答を見る
  • ベストアンサー

Excelで2つのファイルから完全一致のIDを抽出

Excelで2つのファイルから完全一致のIDを抽出したいです。 エクセルについて質問です。 バージョンは「2010」です。 2つのエクセルデータ「Aファイル」・「Bファイル」があります。 AファイルとBファイルには顧客データがあり、 Bファイルは「A列…会社名」「B列…担当者名」「C列…取引先ID」「D列…取引先担当者ID」という内容です。(会社名が同じで担当者が2・3人いる場合もあります。) Aファイルの方は新規の顧客とBファイルの顧客と重複してあります。 それで、Aファイルの方に、Bファイルの方から「会社名と担当者名が一致」している取引先IDと取引先担当者IDを入力していきたいんですが、簡単にできる方法があったら教えてください。 (AファイルにはIDの列を2つ新規で作ります。)

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

  • ベストアンサー
回答No.2

回答します。 Excelで簡単にできるのは完全一致のマッチングです。 VLOOKUP関数を使用します。 VLOOKUP関数は、検索項目が一致した場合、参照側の値を返す関数です。 Bファイルの会社名と担当者名を参照し、一致する取引先ID、取引先担当者IDを 表示することができます。 (1)参照KEYの作成 VLOOKUP関数は1つのKEYしか使用できないので、 会社名と担当者名を結合しKEYを作成します。 Aファイル、Bファイルともに作成します。Bファイルは、C列より左側に作成します。 数式【=Ax&Bx】のような結合式でかまいません。(x:行番号) (2)VLOOKUP関数を入力 AファイルにてVLOOKUP関数を入力します。 2010ですと、=vlookup( と入力するだけで入力ヘルプを表示します。 例) Aファイルは、K列、BファイルはC列に参照KEYを設定している。 Bファイルは1000行あると仮定。 取引先IDの表示(L列に入力)  =vlookup(Kx,Bファイル名!c$3$:e$1000$,2,false) 取引先担当者IDの表示(M列に入力)  =vlookup(Kx,Bファイル名!c$3$:e$1000$,3,false) いかがでしょうか?

jimmy28
質問者

お礼

ありがとうございました。こう見ると結構簡単にできるものなのですね。自分では考えつかないです。本当に助かりました。

その他の回答 (1)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

Aファイルがシート1でBファイルをシート2とします。 BファイルのE列を作業列としてE1セルには次の式を入力して下方にドラッグコピーします。 =A1&B1 そこでシート1ですがA列に会社名がB列に担当者名が入力されているとしてシート2に一致する方がいればその方のデータ(ID)をCおよびD列に表示させるとしてシート1のC1セルには次の式を入力してD1セルまでドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(OR(COUNTA($A1:$B1)<>2,COUNTIF(Sheet2!$E:$E,$A1&$B1)=0),"",INDEX(Sheet2!$C:$D,MATCH($A1&$B1,Sheet2!$E:$E,0),COLUMN(A1)))

jimmy28
質問者

お礼

ありがとうございました。自分のやり方が悪く、ちょっと理解するまで時間が足りなかったです。もっと勉強しないといけませんね。せっかく教えていただいたのに自分が不甲斐ないです。

関連するQ&A

  • EXCELで2つのファイルから重複データで抜き出したいです。

    EXCELで2つのファイルから重複データで抜き出したいです。 『A』ファイルという顧客データと『B』ファイルという顧客データがあります。 それぞれ項目は同じで、 A列=顧客コード B列=顧客名 C列=住所   ・   ・   ・ となっています。 『A』ファイルと『B』ファイルそれぞれのファイルには顧客コードに重複はありません。 『A』ファイルと『B』ファイルを比べて 重複データ以外のダブリのないファイルを作成したいです。 よろしくお願いします。

  • EXCELでの整列(?)方法について

    EXCELで以下のようなことが可能かどうか教えてください。もし、できないようであれば何を使えば可能なのかをお願いします。 1.A列にIDが1.2.3.4.5.10.11.12.13.15・・・・・10000と間が抜けてふられ、B列に顧客名、C列に住所が書かれた表1があります。 2.「1」と同様にA列に1.2.3.10.11.15・・・・10000とさらに間が抜けてふられ、B列に顧客名、C列に担当者が書かれた表2があります。 この表1と表2を顧客IDで結びつけるようにA列に顧客ID、B列に顧客名、C列に住所、D列に担当者という感じで整列(もちろん担当者が空欄の顧客ができます)させることはできるのでしょうか。 分かりにくい文で申し訳ありません。どなたかお力を貸してください。

  • EXCELで2つ条件で1つが部分一致のとき

    Excelの2003バージョンです。 現在使用しているファイル名「会社」シート名「支社」のセルE12に 同じシート上のD12(同じ行ですね)と ファイル名「埼玉」シート名「データ」のA列の中の値と一致(完全一致)して なおかつ、シート名「支社」のF3の値(例・後1、後2)とシート名「データ」の C列の値(例・後1 第23号)と部分一致をした時に 使用中シート「支社」のE12に●、していない時は空白にしたいのです。 ファイル「会社」シート名「支社」 行数 --A列----B列----C列-----D列----E列----F列---- 1                             11223344  (ここに関数)  後1 ファイル「埼玉」シート名「データ」 行数 --A列----B列----C列-----D列----E列----F列---- 10   11223344         後1 第23号  11   11223344         一般会社 第44号  のような場合はE1に●になるようにしたいのです。 それ以外は空白で。 あまり詳しくないので、よろしくお願いします。

  • エクセル・LOOKUPで、不一致の場合の表示

    エクセルの関数、LOOKUPを使って、 患者IDから患者名を引き出したいのですが、 IDが不一致の場合は「該当なし」がわかるような表示にしたい。 現在はIDが一致しない場合、適当な?患者名が表示されてしまう。 シート1のA列に患者ID シート1のB列に患者名 以上の情報があらかじめ入力されています。 やりたいことは シート2のA列にIDを入力すると シート2のB列に患者名を表示。 ID入力しない場合は、空白。 IDが一致しない場合は、不一致などの表示。 現在の計算式 シート2のB列に計算式が入力されています。 =IF(A1="","",LOOKUP(A:A,シート1!A:B,シート1!B:B)) 現在できていること。 ・患者IDを入れなければ空白 ・患者IDを入力し、シート1のIDが一致したら、患者名を返す。 困っていること ・患者IDが一致しないと、適当な?患者名が表示される。

  • エクセルでの顧客管理

    エクセル初心者です。顧客管理で2件こまっています。 (1)A列・・会社名、B列・・携帯番号、C列・・担当者名です。別の表にVLOOKUPによって検索したい会社名前を入れると携帯番号と担当者が表示されるようになっています。しかし、同じ会社に複数の担当者がおり複数担当者がいる場合は使えません、同会社の全員の携帯番号と担当者名が出てくるような関数もしくは方法はありませんか?会社ではアクセスが使える環境ではありません。なんとかエクセルのみで乗り切るのは難しいでしょうか? (2)(A)のワークシートにA列顧客名 B列住所 C列担当者名(3人)のデータがあります。このデータを担当者別にそれぞれの担当者のワークシートに反映させたいのです。追加の顧客は(A)で入力しそれが各担当者別のワークシートに反映される方法はありませんか?

  • エクセルにてこのような抽出はできますか?

    エクセルにてこのような条件抽出(?)はできますでしょうか? 例えば下記のような売上データーがあります。 A列 売上月(4月~3月) B列 顧客名 C列 商品名 月別の売り上げデーターが毎日記入されます(1年間)。 1万行以下には全顧客名のリストが記入されています(例えば500社)。 この全顧客500社の内、売上の上がっていない顧客はどこなのかを抽出することはできますでしょうか? 売上データーを毎日記入することで、売上げのある顧客は分かりますが、売上げの上がっていない顧客はどこなのかを調べたいのです。 全顧客500社-4月売上顧客=4月売上げの上がっていない顧客一覧 こんなイメージです。 月単位で未売上の顧客を調べたいのです このようなことは可能でしょうか? どなたかご知恵を拝借できましたら幸いです。 ※1年を通して月別の売上げを記入します。   A     B    C 1   月  顧客名  商品名   2  4月  顧客A  商品A 3  4月  顧客B  商品B 4  4月  顧客C  商品C 5  4月  顧客D  商品D   ・    ・    ・   ・    ・    ・   ・    ・    ・   ・    ・    ・ ------------------------- ※1万行以下に全顧客データーを記入します(必ずしもここでなくても別シートでも問題ありません) 10000 顧客A 10001 顧客B 10002 顧客C 10003 顧客D 10004  ・ 10005  ・ 10006  ・ 10007  ・ 10008   よろしくお願い致します。

  • 二つのファイルデータを比較し一致したものを並べる。

    こんにちは。VB初心者です。二つ別のファイル(A とB)のデータを比較して、その中で一致したものを並べたいのですが、とっかかりがつかめません。 例えばですが、商店名から下のデータ(一つのエクセルファイルAのシート1)に一致するものを、 EXCEL FILE A Sheet1 担当者  価格    地域  在庫 商品名 商店名 Bさん           埼玉     卵    佐藤屋 Cさん    250円    神奈川 有り 牛乳    高橋屋 もう一つのエクセルのファイル (下のデータ、エクセルファイルBシート1)の中から探して、商店名から比較したデータの結果をもう一つのシートに書き込みたいのですが、どうしたら情報を行ごとにマッチングできるのかわかりません(行ごとに情報が違うので)。。簡単にVLOOKUPでデータを拾うのではなく、マクロで比較したいのですが、よろしくお願いします。 EXCEL FILE B Sheet1 商店名 商品名 価格    地域  担当者 在庫 山田屋 みかん 100円 東京  Aさん 有り 佐藤屋 卵    200円  埼玉  Bさん 有り 高橋屋 牛乳    250円 神奈川 Cさん 有り あと、情報をマッチングの後、情報が抜けているところ(佐藤屋の価格、在庫)を色(赤)に塗ることができますか?こちらのほうもよろしくお願いします。

  • エクセルで一致した数字を抽出する

    こんばんは。 excel 2007を使っていますが、 A列の1~100に数字がランダムに入っています。 B列の1~100にも数字がランダムに入っているとします。 Aの1~100の数字とBの1~100の数字の中で 一致している数字をC列に書き出される方法は ありますでしょうか? よろしくお願いいたします。

  • エクセルでデータを抽出して日報を作りたいです

    今は日報を手書きで作っているんですが、今度からパソコンで作ることになり、かなり困ってます。 やりたい内容としては、エクセルで作っている顧客データがあるんですが、それの中の郵便番号を絞り込んで別ブックの日報のシートに顧客名だけを移す作業です。マクロ初心者で本を読んではいますがどうしていいのかわかりません。どなたか教えてください。 ≪顧客データ≫ A列      B列     C列     D列       顧客名  電話番号  郵便番号  市町村名    顧客データはこのような並びです。顧客名は2行目から始まっており、24000行ほどあります。 ≪日報≫ A列     B列 番号   顧客名 日報はこの並びです。日報の顧客名を移したい場所はB列の13行目から表示させたいです。 日報を作るときにできれば顧客データを触りたくないので、日報でセルに郵便番号を入れて マクロで作れるボタンをクリックして作成できたらいいかなって思っています。 ちなみに日報はデスクトップにあるんですが、顧客データは違うフォルダの中に入っています。 マクロ初心者ですがどなたかわかる方がいましたらよろしくお願いいたします。 わかりやすくコードを書いていただけると助かります。

  • ExcelファイルAと 〃Bの値が一致したらデータを抽出

     <ファイルA>           A列   B列 1行目 コード  値 2行目  1111   10 3行目   2222   20         <ファイルB> 4行目   3333   30         D列   G列                10行目 コード   値                11行目 2222                   12行目 0000                13行目 1111 ExcelファイルAとBの「コード」が一致したら、ファイルAの「値」を ファイルBの「値」に入力したいのですが、どうしたら良いでしょうか? 2つのファイルを開いて、vlookupを使って・・・??? どなたか教えてください。

専門家に質問してみよう