VBA代码抛出错误:运行时错误1004范围类的自动填充方法失败

我有以下的VBA代码。

根据“实体”工作表中的值,必须在“贡献表”中自动填充。

这里当E_Count大于1时,工作正常。 但是当E_Count是1时,在这里的代码的最后一行是如下所示抛出Error: 运行时错误1004范围类的自动填充方法失败

'Autofill Dim MaxRow As Integer Dim E_Count As Integer Dim ii As Integer Dim jj As Integer MaxRow = Worksheets("Contribution").UsedRange.Rows.Count E_Count = Worksheets("Entities").UsedRange.Rows.Count - 4 Worksheets("Contribution").Range("F5:G5").Copy Worksheets("Contribution").Range("F6:G" & MaxRow) Worksheets("Contribution").Range("H4:XFD1048576").Clear Worksheets("Contribution").Range("G4:G" & MaxRow).AutoFill Destination:=Worksheets("Contribution").Range(Worksheets("Contribution").Cells(4, 7), Worksheets("Contribution").Cells(MaxRow, 6 + E_Count)) 

具有2个实体的实体工作表: 在这里输入图像说明

开始button之前的贡献表单击: 在这里输入图像说明 这里VBA代码使数据库调用填充到列E.这就像模板在这里。

点击开始button后的贡献表: 在这里输入图像说明

这里的VBA代码正在开始button点击调用。 根据实体启动中指定的实体,它必须像“贡献”表中那样旋转这些实体,并将自动填充为100%,因为它将位于第一个单元格中,直到所有使用的数据范围为止。

有什么想法吗?

欣赏你的时间。

谢谢,丽塔

可能有很多因素影响到这一点
你确定要使用usedrows.count吗? 请记住,其中的空白不计算在内。
2.如果你自动填充一个大小的范围1 excel会导致错误,如果是这样的on error resume next将工作,但请记住,您的数据可能是一个,它不会自动填充 – 什么来自动填充g4: G4例如? – 如果这应该是一个input错误,应该像它那样处理。
3.单元格不存在(错误显示时是否debugging了E_count?如果是“-6”,会发生什么情况?