运行此代码时,下标在VBA中超出范围

时间:2014-03-31 13:07:02

标签: excel vba

当我最初在调试模式下运行以下代码时,没有问题。然而,当我停止并再次重新运行时,它表示下标超出范围。为什么会这样?不知道为什么会出现这样的错误。

Dim date1 As Double
strDate1 = Sheets("Part2").Cells(i, 1).Value
matchEndRow = Application.Match(CDbl(strDate1), Sheets("1.A").Range("A:A"), 1)
MsgBox matchEndRow
matchEndRow = matchEndRow - 1
MsgBox matchEndRow

需要一些指导。

1 个答案:

答案 0 :(得分:1)

作为评论的后续内容,代码运行时打开了另一个工作簿。

如此改变

Sheets("Part2")Sheets("1.A")

ThisWorkbook.Sheets("Part2")ThisWorkbook.Sheets("1.A")解决了这个问题。