无法使用vba vlookup查找日期

sch*_*ker 3 excel vba excel-vba vlookup

我有一个excel工作表,其中A列包含日期,B列包含相应的日期.例如.A2 = 01/01/14,B2 = Wed,依此类推.

我试图用示例vba代码检索B2中的日子,但我一直收到错误" 运行时错误'1004'无法获取worksheetFunction类的Vlookup属性 "

请参阅我的代码并告知错误.谢谢.

 Sub Button1_Click()


Dim lookup_value As String
Dim lookup_table As Range

Let lookup_value = "1/1/2014"
Set lookup_table = Range("A:B")

the_day = WorksheetFunction.VLookup(CDate(lookup_value), lookup_table, 2, False)


Range("D7") = the_day

End Sub
Run Code Online (Sandbox Code Playgroud)

请注意,我想手动传递lookup_value而不是查找单元格A2.

Ron*_*eld 11

VLookup对数据类型很敏感.并且您的VBA例程正在寻找DATE数据类型,但Excel工作表中不存在这种类型.因此,您需要将字符串lookup_value转换为与工作表上的内容兼容的数据类型.这可能是一个长(对于整个日期)或双(如果你包括时间.

尝试:

the_day = WorksheetFunction.VLookup(CLng(CDate(lookup_value)), lookup_table, 2, False)
Run Code Online (Sandbox Code Playgroud)