• 締切済み

異なるファイル間のVlookup機能について

<前提条件> Aファイル:顧客番号(上4桁)、顧客名、 Bファイル:顧客番号(7桁)、顧客名(現在、空欄)、商品コード、商品名 上記がファイル構成となります。 <実現したいマクロ> 「Bファイルの顧客番号(7桁)の次項目である顧客名に、Aファイルの顧客名を入力したい」 顧客番号の桁数が異なるので、どのようにマクロを作成すればよいか、 わかりません。ご教示のほどお願いいたします。

みんなの回答

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

>Aファイル:顧客番号(上4桁)とBファイル:顧客番号(7桁)は実質は同じものでしょう。 どういう関係にあるのか書かないと、質問になら無いでしょう。 ”000”+Aファイル4桁=Bファイル顧客番号とか。 これなら変数にK="000"&Cells(i,"A")のようにして検索すれば仕舞いでは。 そして顧客番号は数値か文字列なのかも書くこと。 Aファイルの顧客番号、顧客名のある列記号も書くこと。 例データも挙げずに質問するのがおかしい。 ーー VLOOKUP関数の質問か、VBAの質問か。 ーー 答えようとすると必要なデータを、質問者は判らないのかな。

mucunshozo
質問者

補足

内容が不十分で申し訳ございませんでした。 今後は、きちんと意図がわかるよう質問するよう気をつけさせて いただきます。

回答No.1

  =VLOOKUP(A1,'C:\Documents and Settings\*******\My Documents\[Aファイル.xls]Sheet1'!$A$1:$B$13,2) Aファイルがマイドキュメントに保存されてるなら、この様になります。  

mucunshozo
質問者

お礼

アドバイスどうもありがとうございます。 2ファイルは共にマイドキュメントに保存しています。 実際に試してみたのですが、下記のようになってしまいます。 <Aファイル(顧客ファイル)> 顧客コード  顧客名 1001   A商事 1002   B商事 1003   C商事 ※上記顧客コードは、Bファイルの上4桁となります。 <Bファイル> 顧客コード  顧客名 1001001    #N/A 1002002    #N/A 1003003    #N/A 現在、下記関数をBファイルの顧客名に入力していますが、 Bファイルの顧客コードの上4桁をうまく検索値として設定できません。 =VLOOKUP(LEFT(A2,4),'C:\Documents and Settings\All Users\Documents\[顧客ファイル.xls]Sheet1'!$A$2:$B$4,2) 関数の入力間違いでしょうか?

関連するQ&A