2012-08-04 107 views
0

我有一个Excel应用程序,其中包含一个入口页面和一个结果页面。根据输入到输入页面的数据和一些静态表格,还有一些工作表可以计算这些值,并在稍后的结果页面中进行总结。将excel应用程序转换为C#应用程序

我需要将此应用程序转换为Web应用程序并将整个逻辑从Excel移动到C#。会有一些用户界面页面和1个结果页面,并且当前在Excel应用程序中的工作表计算将被移动到不同的C#类中。

有没有这方面的工具,或者我们必须手动将现有逻辑的每一块转换为C#?如果我们必须手动完成,那么是否有任何工具可以帮助总结文本文件中的逻辑,以便我们不必在Excel中重新计算整个计算以重新构建逻辑?

回答

2

我怀疑一个工具,可以帮助你做到这一点,如果该工具存在我期望得到的C#代码是非常糟糕的。 Excel的一个优势是它允许非常灵活的编程风格;缺点是结果代码的结构非常小,这使得人们和机器都难以遵循。最重要的是,逻辑可以采用多种形式,从Excel公式到VBA宏,这使问题复杂化。相比之下,C#倾向于用类来表达世界,它具有非常特定的职责;一个程序本质上是协调类之间传递的消息,以便他们可以“互相交谈”并协作完成工作。

在这种情况下,最好的,我希望翻译工具产生一些不愉快的C#程序。最后,电子表格(没有VBA)是一组函数,它们坐落在单元格中并链接在一起,但没有足够的结构来提取有意义的具有多个功能的类/实体。

此外,我认为重新思考这个应用程序是一个机会。一个Web应用程序可以轻松完成Excel无法执行的操作,反之亦然。我不是一个“一字一语”的密切翻译,而是专注于保留应用程序的精神,但是设计它时不会过多地考虑原始的Excel应用程序。

让Excel应用程序呈现的好处是您已经有了概念验证。我不是试图转换代码,而是简单地追踪所有对其他计算字段有影响的输入点(可能使用审计),列表/图表什么会影响什么(可能使用简单的气泡图和箭头图),并试图用简单的英语来描述用户试图做什么,以及“实体”方面发生了什么。例如,而不是=A2*(1-A3),我会说“产品净成本是其成本时间(1-折扣率)”。而不是=SUM(A5:A32),我会说“用户需要他订购的产品成本摘要,它应显示其订单的总成本,以便他可以对其订单进行概览”。如果您设法使用良好的名称和用例来提取域名的描述,这对开发人员来说更有帮助,可以在任何您想要的平台上编写支持这些需求的最佳应用程序。

2

我不会尝试“转换”解决方案。从头开始用C#构建它。他们用不同的语言编写,用户界面不能重复使用。

0

我同意fabiopagoti。即使有一个神奇的“转换器”可用,人们敢于在未来的更新中维护这种逐个编码的应用程序?

以你的第二个问题,寻找替代的帮手,I've found[CTRL] + [`]组合键,可能会给你这个手:此快捷方式显示在单元格中的所有公式,这样你就可以更舒适,你不会错过任何背后的东西。我希望。

PS:要文本文件?只需应用快捷方式并将工作表“打印”为PDF文件即可。

0

也许您可以使用Google文档。它允许创建脚本并使用公式。

相关问题