vba中循环的数组中的下标超出范围错误

vba中循环的数组中的下标超出范围错误,vba,excel,range,unique,Vba,Excel,Range,Unique,从参考文件复制数据并使副本唯一,然后将这些唯一文本放置在新工作表中的列标题循环中。有人知道我为什么在“With wsDB”行中出现“下标超出范围”的错误吗 加载数组中的值时,如下所示: arrValues=.Range(“I2”),.Range(“I”和.Rows.Count).End(xlUp)) 它变得多维。(行和列) 在这一行中,您只提供一个维度(行)作为j,而缺少另一个维度(列)。因此出现了错误 .Range(.Cells(i,j*4+2),.Cells(i,j*4+4)).Value=

从参考文件复制数据并使副本唯一,然后将这些唯一文本放置在新工作表中的列标题循环中。有人知道我为什么在“With wsDB”行中出现“下标超出范围”的错误吗


加载数组中的值时,如下所示:
arrValues=.Range(“I2”),.Range(“I”和.Rows.Count).End(xlUp))
它变得多维。(行和列)

在这一行中,您只提供一个维度(行)作为
j
,而缺少另一个维度(列)。因此出现了错误


.Range(.Cells(i,j*4+2),.Cells(i,j*4+4)).Value=arrValues(j)

在数组中加载值时,如下所示:
arrValues=.Range(“I2”),.Range(“I”和.Rows.Count).End(xlUp))
它变得多维。(行和列)

在这一行中,您只提供一个维度(行)作为
j
,而缺少另一个维度(列)。因此出现了错误


.Range(.Cells(i,j*4+2),.Cells(i,j*4+4)).Value=arrValues(j)

好的,但是当我尝试添加列时,它会给我其他错误。但是当我尝试添加列时,它会给我其他错误
 Sub uniqueyes()

Dim wsRef As Worksheet
Dim wsDB As Worksheet

Set wsRef = Worksheets("reference1")
Set wsDB = Worksheets("Sheet1")

With wsRef
    .Range("F1:F60").AdvancedFilter Action:=xlFilterCopy, CopyToRange:=.Range("I1"), unique:=True

    Dim arrValues As Variant
    arrValues = .Range("I2", .Range("I" & .Rows.Count).End(xlUp))

End With

For i = 1 To ActiveSheet.Cells(Rows.Count, 4).End(xlUp).Row

    If Cells(i, 4) = "Title" Then

        For j = 1 To (UBound(arrValues)) Step 1


         With wsDB

          .Range(.Cells(i, j * 4 + 2), .Cells(i, j * 4 + 4)).Value = arrValues(j)



            End With

        Next j

    End If

Next i

 End Sub