代码之家  ›  专栏  ›  技术社区  ›  chuck taylor

C#excel互操作公式拖动

  •  1
  • chuck taylor  · 技术社区  · 15 年前

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

    如果我可以用一个命名的范围来实现这一点,那就更好了,但是即使我必须硬编码行,这样就可以沿着10:J10到20:J20这一行来。

    即使是任何指向网页说明如何做这将是非常感谢,因为我有点困在这一点上。

    谢谢!

    4 回复  |  直到 15 年前
        1
  •  5
  •   Stan R.    15 年前

    Range对象有一个名为AutoFill的方法,您应该试试。

    range.AutoFill(destinationRange);
    
        2
  •  1
  •   Charnichart    8 年前

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

    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);
    
        3
  •  0
  •   Sorax    15 年前

    不久前我做了这样的事。下面是我的代码示例:

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

    这个公式是相对适用的。每一步我都用不同的变量 Disposed . 如果有帮助,请告诉我。

        4
  •  0
  •   Paul Keister    15 年前

    通过调用 ListObjects 工作表对象的集合。这相当于在Excel中使用“Format as table”命令。在表格行中输入的任何公式都将使用对表格列的相对引用自动填充到表格的所有行。默认情况下,此行为处于启用状态,但可以通过设置

    Globals.ThisWorkbook.Application.AutoCorrect.AutoFillFormulasInLists
    
    推荐文章