gpt4 book ai didi

vba - 为什么 VBA 中的 VLookup 因运行时错误 1004 而失败?

转载 作者:行者123 更新时间:2023-12-02 22:38:42 28 4
gpt4 key购买 nike

电子表格“Sheet3”如下所示:

            S&P 500         DJIA

1/1/1991 795.4476 2973.09

1/2/1991 786.3856 2947.1

1/3/1991 775.4636 2905.19

1/4/1991 773.5364 2896.8

1/7/1991 760.2996 2847.9

1/8/1991 759.0029 2832.81

1/9/1991 750.8416 2788.67

1/10/1991 758.1719 2820.8

此外,单元格“F2”实际上是 1/7/1991 单元格的复制和粘贴。

VBA 代码如下所示:

Sub badlook3()

Dim BenchSI As Variant
Dim BRange As Range
Dim SIDate As Date


Set BRange = Worksheets("Sheet3").Range("A2:C9")

MsgBox BRange.Address

SIDate = Worksheets("Sheet3").Range("F2").Value


BenchSI = Application.WorksheetFunction.VLookup(SIDate, BRange, 2, True)


End Sub

我收到“无法获取 WorkSheet 函数类的 VLOOKUP 属性”错误。

我在这里错过了什么? A 列的顺序正确。他们是日期。 Excel 想从我这里得到什么?

最佳答案

问题在于使用 SIDate 作为日期(Visual Basic 日期类型)
我的猜测是 visual basic 日期类型和 excel 日期类型不匹配,这就是你收到错误的原因

相反,将 SIDate 声明为 Range,它将起作用

代码如下:

Sub badlook3()

Dim BenchSI As Variant
Dim BRange As Range
Dim SIDate As Range

Set BRange = Worksheets("Sheet3").Range("A2:C9")
MsgBox BRange.Address

Set SIDate = Worksheets("Sheet3").Range("F2")
BenchSI = Application.WorksheetFunction.VLookup(SIDate, BRange, 2, True)

End Sub

关于vba - 为什么 VBA 中的 VLookup 因运行时错误 1004 而失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11055687/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com