能设计一个软件,将需要填写的EXCEL表格生成为网页,在浏览器中填表吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了能设计一个软件,将需要填写的EXCEL表格生成为网页,在浏览器中填表吗?相关的知识,希望对你有一定的参考价值。

我单位需开发一个通过浏览器进行数据采集的软件,有关要求如下:
1、数据采集表格在电脑中提前利用EXCEL软件设计好,比如个人简历表,设置好每一个单元格的格式(字体、字号、数据格式、小数位数、单元格对其方式等等)。电子表格中空的单元格就是需要用户输入数据的地方。
2、将该电子表导入软件中以后,软件能自动在后台对电子表进行分析,将表格转化为网页显示出来。其中:有内容的单元格直接显示,空的单元格(需填写数据)则需要生成输入框,输入框格式受单元格格式影响。
3、对需要输入数据的电子表单元格进行分析,将每一个单元格作为一个字段,单元格数据格式即为字段格式,在后台服务器数据库中生成一张表,储存用户在网页上填写的表单数据。
4、用户在网页上填写表格后可以导出到电脑中,导出的电子表格式与之前第一步利用EXCEL软件设计的电子表格式一模一样。
5、要求兼容性、安全性好,能兼容IE8.0至IE10.0,兼容搜狗、QQ、360、百度、谷歌等其它主流浏览器。

请各位高手说说上述需求实现起来复杂程度如何,应如何实现,软件采用什么编程语言,网页采用什么格式、服务器采用什么系统、数据库有什么要求?
再请大家推荐一下这方面比较有经验的公司。
此处数据采集好以后,我需要在软件的其它模块中对采集到的数据进行分析处理,所以刚才这位朋友的提法不予采纳^-^

建议正常的WEB开发就可以,前端html,JS,CSS,后端Java或者.net都可以,数据库随便

需要将Excel表格生成网页的话,需要考虑一些第三方的Excel表格控件来集成到你的系统中用来在网页中显示Excel,比如:SpreadJS

关于你提出的几点问题:

1、这个只要能支持Excel导入,就能实现你的需求,SpreadJS有Excel导入功能

2、你说的其实都是Excel本身的设计风格,上面说的用一些第三方的类Excel表格控件集成到系统中去做页面的Excel表格展示就可以完全做到。SpreadJS就是将Excel的电子表格在网页中去显示,所以显示的效果完全跟Excel一样

3、是基本的填报需求,SpreadJS中的数据绑定就可以实现类似的效果,将需要填报的单元格用绑定绑定起来,然后就可以获取到用户填写的相关信息,这样在存入数据库就可以完成

4、这个就是Excel的导出功能,SpreadJS就可以导出Excel并且导出内容保持基本一致。

5、Spread支持IE9及以上,并兼容常用的chrome,firefox,safari等主流浏览器。

参考技术A 1和2、格式实现不太可能,现在流行用css样式表,但它比EXCEL的控制能力要差的多。大体还行。
导入软件后进行分析,以我的经验不太可能实现。但是用EXCEL VBA,通过添加标签可以实现转换,但我感觉也不太容易。尤其是格式
3、数据库实现可以
4、数据导出我感觉可以,但是格式不太可能,可以分步,或直接EXCEL VBA存取数据库实现。
5、兼容性,网页兼容性基本不太可能太好。不可能完全解决。

以我的水平觉得不太可能实现,只能分为网站程序+EXCEL vba

不知道.net程序能不能实现追问

EXCEL表直接存为网页,显示效果非常好,就是不知道将其中需要输入数据的地方改为输入框行不行。我分析了一下EXCEL表直接存为网页的持续代码,感觉应该能做到,就是不知道行不行。

追答

谢谢,我有涨了点知识,直接存为网页。输入数据我感觉直接存不行,那需要提交表单的。以我的经验,不要自己开发。不是小工程。

追问

刚刚有人告诉我,用帆软软件,可以很方便的在网页中以电子表格式进行数据采集、分析。我去看了一下,功能的确强,应该能做到。你也可以看看。

追答

看到了,HTML5
以后有机会用下

参考技术B 网页中加一个FTP链接把EXCEL文件直接传给客户下载,让客户通过电邮给你,不是更快。这样兼容性好,浏览器均适用。追问

此处数据采集好以后,我需要在软件的其它模块中对采集到的数据进行分析处理,所以刚才这位朋友的提法不予采纳^-^

参考技术C

看看这个,EXCEL数据汇 应该就是你想要的。

如何以编程方式填写和获取 Excel 电子表格的 PDF 输出?

【中文标题】如何以编程方式填写和获取 Excel 电子表格的 PDF 输出?【英文标题】:How can I fill and get the PDF output of a Excel spreadsheet programmatically? 【发布时间】:2019-01-29 22:30:20 【问题描述】:

我有一个 Excel 工作簿,允许我输入某些字段的值,单击一个按钮,然后根据我的输入生成一个 PDF 报告。然后我必须选择保存此 PDF 文件的目录。

我必须创建一个类似 REST 的 API,它将接收带有 Excel 工作表输入参数的有效负载,并返回生成的 PDF 文件。

我无法访问工作簿中的宏、数据和逻辑,因此我不能直接在我的 API 中实现相同的逻辑。工作簿也会定期更改(公式、宏等),唯一保留的就是输入字段和 PDF 输出。

在使用this library 进行一些测试后,我不确定它是否允许我调用按钮(生成 PDF)并指定输出目录。我主要使用 C# 和 .NET,我该如何实现呢?

【问题讨论】:

如果只有 Excel 可以计算您想要的,那么您需要找到一种方法来自动化 Excel 服务器端,这会带来技术(和许可)问题:support.microsoft.com/en-us/help/257757/…。或者使用新的 Excel REST (Graph) API:developer.microsoft.com/en-us/graph/docs/concepts/… 不确定您是否可以使用它导出 PDF... Npoi 直接处理文件,但无法生成 pdf。 EPPlus 一样。有执行此类任务的免费库(也有商业库)。在我看来,最好的方法是直接编写 pdf 文件(即使用 iTextSharp)。它有点复杂,但您可以完全控制输出,并且不需要安装其他依赖项。 【参考方案1】:

您是否考虑过使用 Excel 互操作库?您可以通过安装 Microsoft.Office.Interop.Excel 包通过 Nuget 获得它。

这将允许您打开工作簿,将一些值写入一些单元格,然后运行按钮调用的宏。

// Start a new instance of Excel
var app = new Interop.Application();

// Open the workbook 
var workbook = app.Workbooks.Open(path);

// Set some values
workbook.Worksheets["Sheet1"].Range["A1"].Value2 = 123;

// Run the macro
app.Run("Module1.MyMacro");

不过,这有一些限制。运行它的计算机必须安装 Excel,因为 Interop 库实际上是在打开 Excel。此外,Application.Run 方法将在宏实际完成运行之前立即返回。您可以通过不断检查是否出现 PDF 输出文件来解决此问题:

while (!File.Exists(path))

    Thread.Sleep(5000); // wait for 5 seconds

【讨论】:

以上是关于能设计一个软件,将需要填写的EXCEL表格生成为网页,在浏览器中填表吗?的主要内容,如果未能解决你的问题,请参考以下文章

找一个可以将excel表格文件数据自动录入填写到其他办公系统的软件?

有啥软件能快速实现网页自动填表?

网页端表格设计指南

excel表格怎么生成图表

用 Excel 生成和管理 Markdown 表格--转载

如何以编程方式填写和获取 Excel 电子表格的 PDF 输出?