在excel中编写Web应用程序?为什么不?

时间:2009-06-29 20:43:55

标签: web-services excel web-applications accounting

在你开始燃烧之前,我会告诉你我正在努力让自己相信这是一个坏主意。

基本上,我正在尝试创建一个具有一些基本会计功能的网站。我的朋友,一位只知道excel的顾问,问这可能是一个excel电子表格而不是网络界面。

我发现自己在想,为什么excel不是这种情况下更好的工具?它拥有web2.0应用程序具有的所有工具(脚本,访问数据库,基本格式),并且用于记帐。你基本上可以使用excel来编写一个从SQL数据库中获取数据的程序,填充一些单元格,然后使用公式。

是否有使用excel的先例,因为使用浏览器制作ajax-y web2应用程序?

为什么这是一个坏主意?

更新:只是为了澄清我的意思是更多的是“修辞”讨论。我不确定为什么其余信息都没有澄清......

11 个答案:

答案 0 :(得分:12)

好吧,如果你在excel中创建它,那么它就不会是一个Web应用程序。它将是一个Excel应用程序。

但这不是一件坏事。如果在Excel中构建应用程序更有意义,那就去吧。

您在Excel中执行此操作的问题与您在任何桌面与Web应用程序中遇到的问题相同。例如,您如何处理部署新版本的应用程序?如何处理更新Excel(或更旧版本)Excel的应用程序?等

ETA:

如果您想避免Excel VBA的繁琐以及管理桌面应用程序的麻烦,您可能需要查看Google Spreadsheets API。您可以使用它来动态创建/更新Google文档电子表格,包括公式和许多其他电子表格的优点。使用混合的Web应用程序和Google Spreadsheets可能会为您提供两全其美的选择,具体取决于您需要做什么。

答案 1 :(得分:12)

经过多年的Excel-VBA编程,我可以为您提供最佳答案:

Excel-VBA错误!它可能是微软生产的最多填充漏洞的应用程序。这对某些任务来说很棒,但强迫它完成一项从未打算过的工作会导致麻烦。

我有一些做类似事情的电子表格,(比尔从未想过的事情),毫无例外地,它们在失败的边缘徘徊,并且只会在最轻微的挑衅下崩溃。

当然,你可以做到,但头痛是不值得的。

答案 2 :(得分:3)

Excel并不意味着以这种方式使用,因此会很痛苦。

网络电子表格集成的两个更好的想法:

  • 查看Resolver One,这是一个可编程的Excel兼容电子表格,带有集成的Web服务器。
  • 使用 Google文档电子表格。有an API以编程方式与它们进行交互。

答案 3 :(得分:2)

这不是一个坏主意,但确实有一些限制。如果部署不是您的问题,并且您不需要对应用程序进行“通用”访问,那么您的解决方案可能会为您节省一些时间。 Web应用程序肯定会是一种更优雅的方法,特别是如果您想要公开提供该软件。

答案 4 :(得分:1)

网络本质上基于HTML,并添加到数据库,CSS和服务器端语言以及javascript(可能还有其他)。与大多数事情一样,您应该使用正确的工具来完成工作。如果您想要一个网站,那么您应该使用这些工具来创建一个网站。

Excel并不意味着制作网站,强迫它这样做可能会导致比幸福更多的挫败感。

答案 5 :(得分:1)

这是一个坏主意,因为使用MS Access编写图形编辑器很糟糕,或使用Powerpoint编写MMORPG是不好的:)

我还会说,一旦你停止使用浏览器作为客户端,它就不再是一个“网络应用程序” - 你真的只是在谈论一个通过HTTP获取数据的Excel工作表。

答案 6 :(得分:1)

好吧,你要在服务器端运行它,你可能会遇到许可和性能问题。

如果您向客户提供.xls,那么您需要让所有客户拥有Excel或兼容的东西。但是你也失去了对你“网站”的控制权 - 如果你拥有当地需要的一切,那么访问的重点是什么?

答案 7 :(得分:1)

那么,SQL语句会在客户端上吗?这不是一个好主意。

答案 8 :(得分:1)

每个说“excel应用程序不是网络应用程序”的人都要+1。

但是......如果要将电子表格隐喻用于Web应用程序的服务器端计算,或者如果要从服务器端代码访问Excel附带的财务函数库,则可以使用{ {3}}。它通过SOAP公开,可互操作,可从任何支持SOAP的平台调用。

它具有服务器功能。它实际上并不在服务器上加载Excel,而是在函数的非GUI运行时加载。

答案 9 :(得分:1)

我认为使用Excel作为浏览器是个坏主意,但我认为更好的想法是在桌面应用程序中使用Excel Control。

这样你就可以控制sql和连接。您可以根据需要随时保存数据。你也可以实现一些更新机制。应用程序会更安全,更难破解。

我认为当你尝试连接到一些外部资源时Excel会冻结,这样你就可以控制一切。

答案 10 :(得分:0)

您是否首先获得此应用程序的用户要求?这听起来并不像他们想要一个网站开头。听起来他们想要一个带有宏的excel电子表格。