代码之家  ›  专栏  ›  技术社区  ›  Sergej Andrejev

是否可以编写一个通过Excel文档运行数据的服务?

  •  1
  • Sergej Andrejev  · 技术社区  · 14 年前

    我想创建一个服务,将提供的数据插入到电子表格字段中,并在重新计算后从其他电子表格字段中获取结果,它应该支持多个并行执行。这有可能吗?也许有人可以给我提供一些可以开始学习的教程的链接?

    3 回复  |  直到 14 年前
        1
  •  0
  •   bryanjonker    14 年前

    我认为microsoft.office.interop.excel不支持并行处理。

    你最好的办法是得到第三方程序。我已经使用了NPOI并取得了很好的效果,但很大程度上取决于您希望支持的Excel版本。

    http://npoi.codeplex.com/

    ETA:这里是教程 http://www.leniel.net/2009/07/creating-excel-spreadsheets-xls-xlsx-c.html

        2
  •  0
  •   Hans Olsson    14 年前

    可以使用Microsoft.Office.Interop.Excel使用Office Automation,如下所述:

    http://msdn.microsoft.com/en-us/library/microsoft.office.interop.excel%28office.11%29.aspx

    连接到Excel并让它做一些事情是相当容易的,但是它可能有点不稳定,并且在之后很难正确关闭它。

    下面是一个例子:

    http://support.microsoft.com/kb/302084

        3
  •  0
  •   edosoft    14 年前

    我以前用 smartxls 它允许您打开现有的电子表格,填写一些值并读取结果。但这不是免费的。

    样例代码:

    WorkBook book = new WorkBook();
    string path = "c:\sheet.xls";
    //Open an existing spreadsheet which will be used as a template for generating the new spreadsheet.
    //After opening, the workbook object represents the complete in-memory object model of the template spreadsheet.
    book.read(path);
    
    book.Sheet = 0; //base
    book.setText(15, 4, "man"); 
    book.setEntry(17, 4, DateTime.Now);
    book.recalc();
    
    • 免责声明:我不是作者或以任何方式与SmartXLS关联