javascript - 相当于 Google Apps 脚本中的 "GoTo"(相当于 VBA-GAS)

标签 javascript excel google-apps-script vba

在编写我的 VBA 宏时,我经常使用“GoTo”以便在不离开 Sub 的情况下跳转到宏的前一部分。现在我正在将我所有的宏转换为 Google Apps 脚本,我正试图找到“GoTo”的等效项。

Sub MySub()
Dim sheetname1 As String
Dim sheetname2 As String
On Error GoTo Err
       sheetname1 = ActiveSheet.Name
           Sheets.Add After:=Sheets(Sheets.Count)
           ActiveSheet.Name = "passwords"
       sheetname2 = ActiveSheet.Name
GoTo aftererr
Err:
MsgBox Error(Err)
Exit Sub
aftererr:

这只是我使用 GoTo 的一个例子。但是,我在许多其他方面都需要它用于我的新脚本;不仅仅是为了重定向错误。例如:

 function MyFunction() {
 var ss = SpreadsheetApp.getActiveSpreadsheet();
 var sh = ss.getActiveSheet();
 if(criteraA == criteraB){
 sh.offset(1,0).activate();
 var i=i + 1;
 //?? GoTo ??
 }else{
 var i=0;
 sh.getRange(row, column)(1,sr.offset(0,1).getColumn()).activate();
 }

最佳答案

您不需要 GoTo,大多数人会争辩说,即使它存在,使用它也是糟糕的编程习惯。使用其他控制结构就可以完成这项工作。

if() {
} else if() {
} else {
}

for(;;) {
   continue;
   break;
}

while() {
}

do {
} while();

switch() {
case:
default:
}

// for errors
throw "Error string"

try {
} catch(error) {
}

您必须稍微调整一下您的逻辑,但这样会得到更好、更易于维护的代码。

关于javascript - 相当于 Google Apps 脚本中的 "GoTo"(相当于 VBA-GAS),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17153890/

相关文章:

c# - 获取Excel文件的内容创建日期

Excel - Power Query - 如何基于现有查询创建新查询

colors - 以编程方式在电子表格中设置边框颜色和样式

javascript - Google Apps 脚本 - 打字机效果

google-apps-script - 无法使用 Google Apps 脚本搜索名称中带下划线的文件

javascript - 如何使用javascript根据另一个输入的值限制输入

javascript - D3js 在鼠标悬停时应用阴影

javascript - 动态 CSS3 前缀用户代理检测

javascript - 导入组件的问题

vba - VBA 中的应用程序.SumProduct/Countifs