C# 范围类的自动填充方法失败
我在尝试使用C#自动填充excel时遇到“Range类的自动填充方法失败”COM异常。 需要您的帮助来解决此问题。因为我尝试了多种方法来实现它,但都失败了C# 范围类的自动填充方法失败,c#,excel,excel-interop,C#,Excel,Excel Interop,我在尝试使用C#自动填充excel时遇到“Range类的自动填充方法失败”COM异常。 需要您的帮助来解决此问题。因为我尝试了多种方法来实现它,但都失败了 Microsoft.Office.Interop.Excel.Range oRange = null; oRange = workSheet.get_Range("E7"); oRange.AutoFill(workSheet.get_Range("E130", "E131")); 我叫错了吗 如果你有替代方案,请提出建议。我已经用替代方案
Microsoft.Office.Interop.Excel.Range oRange = null;
oRange = workSheet.get_Range("E7");
oRange.AutoFill(workSheet.get_Range("E130", "E131"));
我叫错了吗
如果你有替代方案,请提出建议。我已经用替代方案解决了它
((Range)workSheet.Cells[oEntities.RowCount, 5]).FillDown();
自动填充方法的destination参数表示目标范围必须包括源范围 您的源是E1,目标是E130:E131,因此您的不是
例如,如果您的目的地是E1:E131,则可以使用。这是一个老问题,但在现有答案中仍然找不到有效的示例。 在@steve16351应答之后,目标范围必须包括源范围: 给定A2:A10的范围,我们希望自动填充下一列B2:B10 所以我们的目的地范围需要是A2:B10
Range source = sheet.Range["A2:A10"];
Range destination = sheet.Range[range, sheet.Cells[source.Row, source.Offset[0,1].Column]]; // returns A2:B10
source.AutoFill(destination);
谢谢你澄清了这个疑问。现在它正在按预期工作。E1:E131