dポイントプレゼントキャンペーン実施中!

VLOOKUP関数をエクセルVBAで使いたいのですが、
式が間違っているのかどうかは分かりませんが実行できませんでした。

式は以下の通り、書きました。
どこが違うかご指摘願います。
よろしくお願いします。。

'VLOOKUPを行う

Sheets("過去履歴").Range("BJ6").Value = Application.WorksheetFunction.Vlookup(Sheets("登録書").Range("A2").Value,Sheets("過去履歴").Range("B6:BG65536"),1,0)

A 回答 (2件)

>Sheets("過去履歴").Range("BJ6").Value = Application.WorksheetFunction.Vlookup(Sheets("登録書").Range("A2").Value,Sheets("過去>>履歴").Range("B6:BG65536"),1,0)



式自体解っていないので見当違いかも
sheets(”過去履歴”)が参照テーブルですか「Range("B6:BG65536"),1,0」B列が索引にあたる部分で重複項目が無いですね
参照項目がC列~BG列で32列あるのですね 次のパラメータはB列から数えて何列目ということで 1ではありません。
「Range("B6:BG65536"),1,0」は「Range("B6:C65536"),2,0」

マクロ記録でマクロを作成し、このマクロを編集で開くとコードが表示されます。
「VLOOKUP関数をエクセルVBAで使い」の回答画像2
    • good
    • 0
この回答へのお礼

大変わかりやすかったです。
ありがとうございました。

お礼日時:2010/10/11 10:30

式は問題ないようです。



多分、検索値と検索表でマッチ(見つからない)のではないかと思います。
その場合は、次のようなエラーになります。

実行時エラー "1004"
WorksheetFunctionクラスのVlookupプロパティを取得できません。

エラー対応が必要なら「On Error Resume Next」等で対処すべきだと思います。
    • good
    • 0
この回答へのお礼

ありがとうございました。
参考にさせていただきました。

お礼日時:2010/10/11 10:31

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!