0

我收到“下标超出范围”错误。我有两个工作簿。我正在尝试从工作簿 B 中的相应工作表中将值 VLOOKUP 到工作簿 A 的每个工作表中。两个工作簿中的工作表名称相同,只是第一个工作簿有一些额外的工作表,而工作簿 B 中没有相应的工作表。我要去哪里错误的。

Sub Update1()

Dim x As Integer
Dim y As Integer
x = ActiveWorkbook.Sheets.Count

For y = 1 To x

    Dim wsheet As String '1
    Dim wrange As Range     '2
    wsheet = ActiveWorkbook.Worksheets(y).Name '3
    Set wrange = Application.Workbooks("2012SWD.xlsx").Worksheets(wsheet).Range("A1:G100") '4
    For n = 1 To 100
        If SOME CONDITION Then
           Sheets(y).Range("T" & n).Value = WorsheetFunction.VLookup("A" & n, wrange, 3, False)
        End If
    Next n

Next y


End Sub

问题出在第 1、2、3、4 行中的一条

某些条件是Left(Sheets(y).Range("A" & n), 2) Like "CA"

4

1 回答 1

0

你拼错了WorksheetFunction

此外,工作簿“2012SWD.xlsx”需要已经打开(工作簿集合仅指打开的工作簿),并检查其扩展名不是 .xlsm(或其他)。

..还有,蒂姆说的:)

于 2013-07-19T19:48:23.853 回答