我不明白错误1004

为什么我在这里得到错误1004:

ILast = .Cells(Rows.Count, 1).End(xlUp).Row 

我试过了

 Sheets("MFG_DATA").Cells(Rows.Count, 1).End(xlUp).Row 

然后我得到错误9。

这是它的循环,

 With DCSPROGRAM.Sheets("MFG_DATA") ILast = .Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To ILast If .Cells(i, 1).Value = MFG Then FORM.Cells(8, 2) = .Cells(i, 3).Value 

我有一个非常相似的循环,它不会触发错误1004:

  With Wbk.Sheets("QTR_LOG") ILast = .Cells(Rows.Count, 1).End(xlUp).Row For i = 1 To ILast If .Cells(i, 1).Value = QTR_NUM Then .Cells(i, 6) = TOTALFOB .Cells(i, 7) = TOTALWC .Cells(i, 10) = TOTALTIME 

DCSPROGRAM工作表中最多有65,536行是XLS吗? 如果您正在运行XLSX的代码,则Rows.Count表示1,048,576。 试试就是,

 With DCSPROGRAM.Sheets("MFG_DATA") ILast = .Cells(.Rows.Count, 1).End(xlUp).Row ... End With 

注意..Rows.Count 。 这意味着该工作表中的行数,而不是从任何工作表中排除的行数。