我想将范围分配给我的变量Arg1。错误'1004'对象'_Worksheet'的方法'范围'失败
dim wkb2 as workbook
set wkb2 = workbooks("File2.xlsx")
dim ws2 as worksheet
set ws2 = wkb2.worksheets(k)
Dim Arg1 As Range 'the range to sum
Dim Arg2 As Range 'criteria1 range`enter code here`
Dim Arg3 As Variant 'criteria1
Dim Arg4 As Range 'criteria2 range
Dim Arg5 As Variant 'criteria2
Set Arg1 = ws2.Range(Cells(i + 2, 6), Cells(i + 2, 6).End(xlDown).Offset(-1,
0))
Set Arg2 = ws2.Range(Cells(i + 2, 4), Cells(i + 2, 4).End(xlDown))
Set Arg4 = ws2.Range(Cells(i + 2, 5), Cells(i + 2, 5).End(xlDown))
Arg3 = ws1.Cells(j, 20)
Arg5 = ws1.Cells(j, 21)
ws1.Cells(j, 23).Value = Application.WorksheetFunction.SumIfs(Arg1, Arg2,
Arg3, Arg4, Arg5)
我得到的错误(标题)当我设置ARG1 = ...
我所试图做的是分配给ARG1从单元格区域(I + 2,6):单元格(i + 2,“使用Ctrl Down后单元格更高”)。因此,例如,如果我+ 2 = 5,我想要范围。(“F5:F9”),假设最后一行是Row10。
任何帮助,非常感谢! (:
是'ws2'properly设置哪里是它的价值? – LocEngineer
ws1没有被声明或分配,还有Dim k As Long Dim i As Long Dim j As Long are missing – QHarr
'k'的值是多少?是否为0并且它的编号是否对应正确的工作表?是否打开了File2.xlsx?检查'wkb2.Worksheets(k)'的值检查您是否拥有正确的工作表。 – LocEngineer