使用excel/sheets在webapp中进行读写数据库的计算?

问题描述:

上下文:我有几个Excel电子表格,它们接受用户输入,运行一些相当复杂和多步骤的计算,这些计算严重依赖于Excel的函数,然后输出结果和图表的结果表和我的行业的标准图表。我的客户询问我是否可以将其转换为Web应用程序,并将所有条目保存到数据库中,并将所有结果以浏览器形式发送。我知道我可以用php或javascript编程,但由于我依赖于excel的功能有多严重,所以这会很困难而且非常耗时。使用excel/sheets在webapp中进行读写数据库的计算?

问题:是否可以捕获表单中的数据,使用php编写,并保存到sql数据库(或任何语言/数据库解决方案),并使用这些值填写我的用户输入单元格Excel电子表格,它将在后台用作“计算引擎”?

首选项:更喜欢PHP,因为我比JavaScript有更多的经验。同样,更喜欢SQL作为DB解决方案。将Excel优先于Google表格,但可根据需要进行切换。

+0

当然,你可以使用这样的库来编辑电子表格https://phpspreadsheet.readthedocs.io/en/develop/ – JimL

+0

@JimL,这看起来像acool解决方案。通过一个问题,我希望你能回答。假设我有一个预先存在的电子表格,其单元格A5中的公式为sum(A1:A4),而在A6中,我有一个公式为(A5 + 1)的公式。在PhpSpreadsheet中,我可以读取电子表格,为A1:A4写入新值,然后拉出A6并将其显示给用户,还是需要重新创建整个过程? 我想我所问的是,如果我有一系列计算是在我写入的单元格和从中拉出的单元格之间完成的,那么是自动完成还是自动完成? – user1563247

考虑到你使用Excel,我猜你正在运行Windows机器。我知道你可以用把Excel作为一个数据库使用ODBC。我不确定以这种方式进行更改会触发您正在查找的重新计算,但是如果这样做,您可以将Excel文件视为a数据库(但可能不是您的最终数据库)。

如果您要朝这个方向移动,将会有额外的安装工作让Excel在没有登录的情况下正常运行(或者,您需要配置服务器,以便您始终使用用Excel运行登录)。

从长远来看,我会建议从使用Excel进行迁移来进行计算。

+0

由于我的客户几乎总是想要一个excel电子表格(特别是一旦我们决定了所有输入的最终版本),迁移离开excel是不可能的,这就是为什么我仍然希望在后台运行excel的原因......它确保一致性,但拥有一个超越Excel的DB将允许更好地控制所有已运行的不同案例。 – user1563247

+0

呃。那么......这就是客户想要的,并且在Excel是最终产品时使用Excel才有意义。如果我正确理解你,数据库只是保留一个历史记录?任何你不能将电子表格存储在数据库中的原因? – theGleep

+0

这就是我们目前所做的...文件夹系统中的工作表命名为“Project-A_Scenario_v57.3”。并不是每一个场景都会被捕获或被破坏等等。在这些项目中,我们会有100个电子表格。我希望实现的目标是在网站上有一个下拉列表,我可以选择正确的场景,拉起来,浏览输出...并将所有输入存储在数据库中,并将所有计算完成一种我认识的人不可能通过在应该被计算出来的单元中固定一个值而意外地搞砸了。 – user1563247