如何将VBA转换为Google应用程序脚本?
我的公司正在从微软Office转换到谷歌文档,我有一些代码想在谷歌电子表格中使用,但我不知道怎么做 考虑以下代码示例:如何将VBA转换为Google应用程序脚本?,vba,google-apps-script,google-sheets,Vba,Google Apps Script,Google Sheets,我的公司正在从微软Office转换到谷歌文档,我有一些代码想在谷歌电子表格中使用,但我不知道怎么做 考虑以下代码示例: Private子工作表\u更改(ByVal目标作为范围) 如果不相交(目标,范围(“E:J”))则为零 单元格(Target.Row,1)=月份名称(月(日)) 单元格(Target.Row,2)=格式(现在为“mm/dd/yyyy”) 如果结束 端接头 函数的结构如下: Private Sub Worksheet_Change(ByVal Target As Range)
Private子工作表\u更改(ByVal目标作为范围)
如果不相交(目标,范围(“E:J”))则为零
单元格(Target.Row,1)=月份名称(月(日))
单元格(Target.Row,2)=格式(现在为“mm/dd/yyyy”)
如果结束
端接头
函数的结构如下:
Private Sub Worksheet_Change(ByVal Target As Range)
Statements here
End Sub
这可能会转化为:
function Worksheet_Change(ByVal) {
Statements Here;
};
JavaScript中的函数不是以End-Sub
结尾,而是以大括号}
结尾
if (condition) {code here;}
If,then语句的结尾不是End If
,而是一个大括号}
if (condition) {code here;}
这是JavaScriptIf语句的语法。JavaScript中没有
Then
关键字。这在google应用程序脚本中目前是不可能的,因为电子表格服务中既没有工作表选择更改事件,也没有选择更改事件。Google电子表格事件列表如下所示
但是我们有气体,通过这个,你可以在某个特定的时间运行一个函数。在你的情况下,让我们假设上午12点。您必须编写一个函数,该函数将在上午12点运行,以浏览所有工作表,然后将单元格(Target.Row,1)和单元格(Target.Row,2)格式化为您喜欢的格式
当然,你必须重组你目前的电子表格。。。欢迎使用谷歌应用脚本。使用GSpread.NET。使用Microsoft Excel API使用Google电子表格。 您不需要重写所有代码,只需将CreateObject(Excel.Application)替换为CreateObject(GSpreadCOM.Application) 在2020年,谷歌发布了一个插件,可以自动将VBA转换为应用程序脚本 注:
- 只有企业用户才能访问此加载项
- 某些API无法自动转换(例如,文件系统上的操作)。你必须手工重写它们