【发布时间】:2012-10-24 20:42:39
【问题描述】:
VBA 是编写 excel 宏的语言。 Google 表格仅支持将 Google 应用脚本作为宏语言。是否有直接或自动的方式将 VBA 脚本转换为 Google Apps 脚本脚本而无需重写代码?
这是我正在尝试转换的示例 VBA 脚本:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngStart As Range, rngCrit As Range
Set rngStart = Range("A3")
Set rngCrit = Range("B1")
On Error GoTo ExitPoint
Application.EnableEvents = False
If Not Intersect(Target, rngCrit) Is Nothing Then
Range(rngStart, Cells(Rows.Count, rngStart.Column).End(xlUp)).ClearContents
If Val(rngCrit) > 0 Then
With rngStart.Resize(Val(rngCrit))
.Value = "=ROW()-" & rngStart.Row - 1
.Value = .Value
End With
End If
End If
ExitPoint:
Set rngStart = Nothing
Set rngCrit = Nothing
Application.EnableEvents = True
End Sub
我尝试过的:
我尝试用一些等效的 Google 脚本替换一些命令。我的问题是我的想法太线性了。我正在尝试以与 VBA 完全相同的方式进行编码,并且只是尝试将关键字从 VBA 切换到 Google Script 中的关键字。我希望有一个直接的方法。
【问题讨论】:
-
好吧,我尝试用一些等效的 Google 脚本替换一些命令。我的问题是我的想法太线性了。我正在尝试以与 VBA 完全相同的方式编写代码,只是尝试将关键字从 VBA 切换到 Google Script 中的关键字
-
关闭选民,考虑让这个问题悬而未决。这个问题比大多数 vba -> 应用程序脚本转换问题要好,我打算将其用作所有其他问题的近似副本(请参阅linked questions)。如果这个参考问题被关闭并且将来有一个新的简单方法可用,那就不好了。
标签: vba google-apps-script google-sheets code-conversion