- ベストアンサー
VLOOKUP関数をエクセルVBAで使いたいのですが、
VLOOKUP関数をエクセルVBAで使いたいのですが、 式が間違っているのかどうかは分かりませんが実行できませんでした。 式は以下の通り、書きました。 どこが違うかご指摘願います。 よろしくお願いします。。 'VLOOKUPを行う Sheets("過去履歴").Range("BJ6").Value = Application.WorksheetFunction.Vlookup(Sheets("登録書").Range("A2").Value,Sheets("過去履歴").Range("B6:BG65536"),1,0)
- みんなの回答 (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」 マクロ記録でマクロを作成し、このマクロを編集で開くとコードが表示されます。
その他の回答 (1)
- jcctaira
- ベストアンサー率58% (119/204)
式は問題ないようです。 多分、検索値と検索表でマッチ(見つからない)のではないかと思います。 その場合は、次のようなエラーになります。 実行時エラー "1004" WorksheetFunctionクラスのVlookupプロパティを取得できません。 エラー対応が必要なら「On Error Resume Next」等で対処すべきだと思います。
お礼
ありがとうございました。 参考にさせていただきました。
お礼
大変わかりやすかったです。 ありがとうございました。