[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『VBAでVLOOKUP関数を使う』(ぶー)
またお世話になります。
VBAでVLOOKUP関数を使いたいです。
それで、自分で書いてみたのですが、エラーになります。
このサイトの参考ページも見て考えてみたのですが、
うまく動作しません。
Sub 便利()
Worksheets("便利").Select
Range("I2").Value = Application.WorksheetFunction.VLookup(Range("D2"), _ Worksheets("在庫").Range("A:F"), 6, False)
End Sub
エラーは
「実行時エラー1004
WorksheetFunctionクラスのVlookupプロパティーを 取得できません」
と表示されます。
よろしくお願いします。
コード自体は問題なさそうですが・・・。 普通にVLOOKUP関数をセルへ入力した場合、N/Aエラーにならないか、 確認してみてください。リストのデータと検索値のアンマッチ (リスト側に不要なスペースが入力されているなど)が原因の ときが多いです。 (みやほりん)
リストのデータに検索値がないと、エラーになるんですね。
普通に関数をセルに入力すると、#N/Aになるのに・・・
では、再度質問ですが、
リスト側に検索値がなくて、エラー表示させないためには
どうしたらいいですか?
VBAでやってみたいです。
(ぶー)
検索値がなくてエラーになるのだから、 その前に検索値が存在するかどうか、確認すればよいのです。 Sub 便利()
Worksheets("便利").Select IF WorksheetFunction.Countif(Worksheets("在庫").Range("A:A"),Range("D2")) > 0 Then Range("I2").Value = Application.WorksheetFunction.VLookup(Range("D2"), _ Worksheets("在庫").Range("A:F"), 6, False) Else MsgBox Range("D2") & "がリストに存在しません。" End If End Sub (みやほりん)
みやほりんさん、わかりました。
ありがとうございます!
(ぶー)
事前のエラ−チェックも1つの方法ですが、
On Error トラップ + WorkSheetFunctionクラスのVLookUp ApplicationクラスのVLookUp Evaluate 等々の方法もあります。
以下URL参考まで
http://excelfactory.net/excelboard/excelvba/excel.cgi?mode=all&namber=144927&rev=0
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.