• 締切済み

vlookup関数について教えてください

こんにちは。 とあるシステムへ取り込むデータを作成するために、以下のような処理を行いたいです。 取引先ファイル①:株式会社 A社          株式会社 B社          ・          ・          ・          株式会社 Z社          〇〇 △△様 データは500件ほどあります。 取引先ファイル②:株式会社A社          株式会社B社          ・          ・          ・          株式会社Z社          〇〇 △△様 ①のファイルと②のファイルの取引先は7~8割は一致していますが、完全ではありません。 vlookup関数で、①のファイルの取引先名を検索値として入力して、②のファイルに同名の取引先を表示したいのですが、株式会社と会社名の後にスペースが入っている関係で検索がきれいにできません。 ワイルドカードを使って検索すればうまくいくかと思ったのですが、会社名ごとにアスタリスクの中の名称を変えなければならないので、現実的ではありません。 vlookup関数のうまい使い方をご存じのかたお教えください。

みんなの回答

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.5

社名にスペースがある場合 株式会社あ い社 などの場合 D列のデータからスペースを削除したデータを別の列に作ってそこを参照 E1に =SUBSTITUTE(SUBSTITUTE(D1," ","")," ","") 元の式の D:DをE:Eに変更 するとか VLOOKUPを以下のようにしていける場合もあると思います。 =VLOOKUP("*" & IF(FIND("株式会社",A1)=1,TRIM(MID(A1,6,LEN(A1))),TRIM(LEFT(A1,LEN(A1)-5))) & "*",D:D,1,FALSE) セルや列の位置は、回答No.4の添付画像の位置をもとにしています。

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.4

回答No.3で画像を添付し忘れてました。 式のセル指定は添付画像でのセル位置です。

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.3

> 確認していると、前(株)と後(株)が混在していました。 バージョンによって使えないかもしれませんが(Office365だと使えるみたいです) G1の式 =VLOOKUP("*" & CONCAT(TEXTSPLIT(A1,{"株式会社"," "})) & "*",D:D,1,FALSE) 上記が使えない場合は H1の式 =VLOOKUP("*" & SUBSTITUTE(SUBSTITUTE(A1,"株式会社","")," ","") & "*",D:D,1,FALSE) 質問のスペースが全角したので全角にしてますが半角でしたら" "を" "にするか 両方設定して置換部分を以下のようにしてください CONCAT(TEXTSPLIT(A1,{"株式会社"," "," "})) SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,"株式会社","")," ","")," ","") 他にも社名以外で取り除きたい文字があれば上記のパターンで追加してみてください。

  • msMike
  • ベストアンサー率20% (364/1804)
回答No.2

ご参考までに。 B2: =TRIM(SUBSTITUTE(A2," ","")) G2: =TRIM(SUBSTITUTE(F2," ","")) D2: =B2=G2 添付図参照(Excel 2019)  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄↓↓↓↓↓↓↓↓↓↓↓↓↓

  • kkkkkm
  • ベストアンサー率66% (1725/2595)
回答No.1

添付画像を例として A列の社名をF列で検索して一致する社名をH列にVLOOKUPで表示しています。 H1に =VLOOKUP("*" & MID(A1,6,LEN(A1)),F1:F100,1,FALSE) として下にコピーしています。 よろしければ参考ににしてみてください

raluta
質問者

お礼

ありがとうございます。

Powered by GRATICA
raluta
質問者

補足

ありがとうございます。 MID関数勉強になります。 確認していると、前(株)と後(株)が混在していました。 この場合だとさすがに難しいですよね・・・?

関連するQ&A