1

我正在使用 C# excel 互操作框架为我的公司自动生成一堆报告,我想知道是否有人知道如何用它来拖动方程式。

如果我可以使用命名范围来做到这一点,那就更好了,但即使我必须对行进行硬编码,所以它沿着将 A10:J10 向下拖动到 A20:J20 的行,这也可能没问题。

甚至任何指向解释如何执行此操作的网页的指针都将不胜感激,因为我有点卡在这个网页上。

谢谢!

4

4 回答 4

7

Range 对象有一个叫做 AutoFill 的方法,你应该试试。

range.AutoFill(destinationRange);
于 2010-11-19T20:32:23.743 回答
1

您可以使用下一个片段。希望有所帮助

Excel.Range r1 = xlWorksheet.Range[xlWorksheet.Cells[offset , 1], xlWorksheet.Cells[offset, 1]];
Excel.Range r2 = xlWorksheet.Range[xlWorksheet.Cells[offset, 1], xlWorksheet.Cells[offset + 10, 1]];
r1.AutoFill(r2, Excel.XlAutoFillType.xlFillCopy);
于 2018-05-15T12:51:52.493 回答
0

不久前我做过类似的事情。这是我的代码示例:

Excel.Range rng, rngResize;
rng = (Excel.Range)oSheet.get_Range("A10", "J10");
rngResize = rng.get_Resize(10, Missing.Value);
rngResize.Formula = "=B9+I8";

该公式相对适用。我为每个步骤使用了单独的变量,因此它们可以是Disposed. 让我知道这是否有帮助。

于 2010-11-19T20:38:14.690 回答
0

您可以通过调用 Worksheet 对象的ListObjects集合的Add 方法来创建 Excel 表 (ListObject) 。这相当于在 Excel 中使用“格式化为表格”命令。在表格行中输入的任何方程式都将使用对表格列的相对引用自动填充到表格的所有行中。此行为默认开启,但可以通过设置控制

Globals.ThisWorkbook.Application.AutoCorrect.AutoFillFormulasInLists
于 2010-11-19T20:55:49.030 回答