14

你们中是否有人使用过 Google Apps 的 JavaScript 宏功能,尤其是电子表格?能力如何比较?是否有任何 Google Apps 无法使用 VBA 宏来完成的事情?

4

7 回答 7

11

我正在将一个复杂的项目从 VBA 转换为 Google Apps 脚本作为实验,看看什么可以做,什么不能做。

一般来说,谷歌应用脚​​本的开发环境是原始的和令人沮丧的。该语言当然是 javaScript,所以如果您已经知道,那么您就有了先机。但问题是 javaScript 的许多优点是无法实现的,因为您实际上无法访问 DOM 元素,并且您也没有等效的 Excel 形状 - 除了通过 UI 对象 - 这与excel表格,具有相同类型的事件和对象等。

另一个问题是普遍缓慢。您需要小心您的结构,以便最大限度地减少对电子表格数据的调用(我通过构建值缓存解决了这个问题),并且可伸缩性非常值得怀疑。

我同样对 javaScript 或 VBA 很熟悉,所以抛开语言不谈,VBA 目前更能完成任务,完成任务也更快,尽管应用程序脚本中内置了越来越多的功能,使其非常有前途。

我正在记录我的迁移进度,以及我遇到的事情以及找出如何最小化结构变化的战斗(我试图看看我是否能想出一些允许在两个平台上进行双重维护的东西),所以有兴趣的可以关注这里

http://ramblings.mcpher.com/Home/excelquirks/gooscript

布鲁斯

于 2012-03-06T11:00:39.740 回答
3

我正在尝试使用谷歌应用程序脚本在谷歌电子表格中创建图表,这似乎是不可能的......这在 VBA 中相当容易,也许 vb6 已经有 10 年历史了,但另一方面,你可以做你需要的一切与您的电子表格。不过,谷歌脚本中并非如此。

于 2012-06-06T19:43:50.873 回答
2

Office 中的 VBA 已经差不多 10 年了,仍然使用旧的 VB6。这种语言的局限性是无穷无尽的。没有数据结构,没有逻辑短路,类型有限,非面向对象。Google Apps 和 javascript 大概处于技术的最前沿,因此它不应该有很多这些限制。

至于对方能做什么而对方不能做什么,那就更难断言了。我认为这两种语言或多或少都是图灵完备的,因此虽然在每种语言中做某事可能或多或少有些困难,但理论上,一个足够好的程序员团队可以在任何一种语言中做任何事情。

干杯:D

于 2010-12-03T18:26:31.817 回答
2

主要障碍之一是 Google Apps 是基于网络的。那是大多数公司对您将自己的数据不安全地存储在自己的网络中的想法感到畏缩。我永远不会相信谷歌有这种数据。我确信他们有安全的数据连接器,但为什么要冒这个风险呢?

当然 VBA 已经过时了,而且不像 javascript 那样性感。但是,它是快速编写小型应用程序并将其快速提供给用户的绝佳工具。您只会真正听到关于由非程序员使用 VBA 构建的应用程序的噩梦故事。

这真的取决于你的项目,以及你想要完成的事情。两者都有其局限性。

于 2010-12-03T20:35:53.493 回答
0

快速浏览一下 Google 电子表格 API 后,我得到的印象是它目前有些受限,例如:

更少的事件,无法控制计算?无法编写 UDF?

有没有人尝试将它用于严肃的工作?

于 2010-12-04T10:20:52.073 回答
0

就其本质而言,Google 电子表格将无法完成本地程序可以完成的许多事情。示例:将导入用户指定文件夹中的所有 csv 文件并合并它们的宏。

于 2010-12-04T11:09:14.423 回答
0

想到的一件事是 VBA 可以通过“声明函数”声明完全访问 WinAPI。Google Apps 脚本没有此访问权限。如果您要在两者之间转换电子表格,则需要注意这一点。

于 2011-05-10T06:22:24.557 回答