我继承了一个大型的Excel电子表格,它使用任意数量的模拟表来完成一些财务计算,并且被要求将Web应用程序编写为前端。现在我可以花费无数个小时试图弄清楚工作表,或者我可以从我的网络应用程序中调用excel表。我似乎需要Office主互操作程序集,但是我是否还需要在Web服务器上安装office / excel?如何处理同一张表的多个同时请求?这种方法甚至可能吗?
答案 0 :(得分:4)
我们实施了一个项目,我们从网络应用程序调用多个Excel电子表格。
我们使用Sharepoint Excel Services来执行此操作。它对我们来说非常有效。
在我们的案例中,我们最大的电子表格包含300多个输入参数,1000个表格和50个结果。这大约需要0.5秒,其中大部分时间是通过Web服务将数据移入和移出excel服务。
使用Sharepoint Excel Services的主要缺点是成本。但是,在我们的案例中,开发时间的节省远远超过了成本。
答案 1 :(得分:3)
Excel是一个桌面应用程序(也是一个非常好的应用程序),并非设计用于多个用户或Web应用程序中的部署。您可能能够将某些内容拼凑在一起,但您可能需要编写大量代码来管理桌面应用程序的设计功能,这些功能在Web应用程序中是不足够的。
您最好尝试了解Excel工作簿正在执行的操作,并在代码中使用所需的多用户功能进行模拟,这些功能必须低于Web应用程序的请求。如果您有权访问当前用户和/或作者,则应该能够记录该要求,并且您可以使用Excel工作簿在您理解算法后对其进行测试。
祝你好运。
答案 2 :(得分:2)
看看SpreadsheetGear。通常它用于生成新的电子表格,但它也有现有电子表格的计算引擎。与Excel不同,它是为服务器环境设计的。
答案 3 :(得分:1)
您可以尝试SmartXLS for .net,它有Excel工作簿的计算引擎,它不依赖于Excel。
答案 4 :(得分:0)
不确定这是否适合您的任务,但是您是否可以将其导入Google Spreadsheets以使其成为多用户?如果它真的很复杂,那么我不应该认为这会有效,但可能值得一试。