javascript - JS/GS 简单 Google Sheets 脚本

标签 javascript

我正在尝试创建一个简单的脚本,首先检查(从第 3 列开始的第 3 行中的所有单元格)它们是否包含与可用工作表不同的名称,如果是,则创建一个新工作表。如果没有,请转到下一个单元格。最好直到该行为空,但我没有走到那一步。目前我有

var row = 3; //Global Variable
function Main() { // Main Function
    Activate(); 
    GetNames(); 
}
function Activate() { // Initialize
    var get = SpreadsheetApp.getActiveSpreadsheet();
    var import = get.getSheetByName("Import");
}
function GetNames() { // Get Names and check for existing Sheets
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var import = ss.getSheetByName("Import");
    var sheet = ss.getSheets()[0];
    for (i = 0; i < 1000; i++) { // Loop which I think is broken
        var names = import.getRange(row,3).getValue();  
        if (import.getSheetByName(names) == null) {
            import.insertSheet(names);
            import.activate();
        } 
       row + 1;   
    }
}

这是数据

enter image description here

它成功添加了第一张表,但我认为无法继续循环。 正如您可能会看到的那样,我对此非常陌生,我们将不胜感激。

最佳答案

您可能想在此处将 row 加 1:

row + 1;

但你不是。 row + 1 只是一个带有值的表达式(在您的示例中为 4,因为 row 始终保持为 3)。您需要的是声明

row = row + 1;

但是,如果这就是您使用全局变量 row 的全部目的,那么您根本不需要它。只需使用已经从 0 计数到 1000 的循环变量 i 即可。您可能需要类似 import.getRange(i+3,3) 的内容。

关于javascript - JS/GS 简单 Google Sheets 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43480933/

相关文章:

javascript - jQuery 数据表 "No Data Available in Table"

javascript - Firebase 关闭会删除所有 eventType 的所有回调

javascript - 动态脚本未在history.go()上加载

javascript - 创建平滑的 jQuery fadeIn 和 fadeOut 图像

javascript - 类方法不会覆盖类字段

javascript - Fancybox 使用 'iframe' 设置搞乱浏览器历史记录

javascript - 新版本的谷歌地图javascript版本是否适用于JavaFx-WebView

javascript - 更新 mongodb 中的嵌套值

javascript - 无需路由即可动态添加/注册 AngularJS Controller

javascript - fs.writeFileSync 不写入带有转义反斜杠的字符串