|
こんにちは。かみちゃん です。
>フォームのテキストボックスにVlookup関数を設定し、商品コードを基に商品名を
>表示しようとしています
Keinさんからコメントがついていますが、変数aaの使い方がおかしいです。
また、VLOOKUP関数の第2引数の左端列に第1引数の値がなかった場合、
ご提示のエラーになります。
ワークシート関数でした場合#N/A!になる事象です。
Private Sub 設定_change()
Dim aa As String
Worksheets("商品マスタ").Select
aa = ""
On Error Resume Next
aa = Application.WorksheetFunction.VLookup _
(商品名検索.商品コード.Value, Worksheets("商品マスタ").Range("J3:K65536") _
, 2, False)
If aa <> "" Then
商品名検索.商品名.Value = aa
Else
MsgBox "商品コードが見つかりません"
End If
End Sub
VLOOKUP関数を使わなくてもFindメソッドでもできると思います。
Private Sub 設定_change()
Dim aa As Range
Worksheets("商品マスタ").Select
With Range("J3:K65536")
Set aa = .Find(商品名検索.商品コード.Value, LookIn:=xlValues, LookAt:=xlWhole)
If Not aa Is Nothing Then
商品名検索.商品名.Value = aa.Offset(, 1).Value
Else
MsgBox "商品コードが見つかりません"
End If
End With
End Sub
|
|