こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

VLOOKUP関数をエクセルVBAで使いたいのですが、

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

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

'VLOOKUPを行う

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

投稿日時 - 2010-09-27 22:34:57

QNo.6212540

すぐに回答ほしいです

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

>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」

マクロ記録でマクロを作成し、このマクロを編集で開くとコードが表示されます。

投稿日時 - 2010-09-28 01:10:04

お礼

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

投稿日時 - 2010-10-11 10:30:29

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.1

式は問題ないようです。

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

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

エラー対応が必要なら「On Error Resume Next」等で対処すべきだと思います。

投稿日時 - 2010-09-28 00:19:48

お礼

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

投稿日時 - 2010-10-11 10:31:02

あなたにオススメの質問