【问题标题】:Google Sheets Duplicate Rows Script not working谷歌表格重复行脚本不起作用
【发布时间】:2016-10-27 17:57:10
【问题描述】:

目前我在下面有一个复制行但只保留行数据的第一个单元格的脚本。但是目前在我的电子表格上运行它时,它会为每个当前行创建 15 行 - 它应该为每个当前行创建 4 行:(

function duplicateRows() {

var sh, v, arr, c, b;

sh = SpreadsheetApp.getActive()
    .getSheetByName('products_export')
v = sh.getDataRange()
    .getValues();
arr = [v[0]];
v.splice(1)
    .forEach(function (r, i) {
        arr.push(r)
        c = 0
        while (c < 3) {
            arr.push([r[0],"","","","","","","","","","","","","","","","","","","","","",""])
            c += 1;
        }
    })
sh.getRange(1, 1, arr.length, arr[0].length)
    .setValues(arr);
}

【问题讨论】:

    标签: google-apps-script google-sheets


    【解决方案1】:

    你可能只运行了两次函数。

    首字母:

    N  NAME  AGE
    1  fish  cat
    2  fire  hat
    

    第一次执行:

    N  NAME  AGE
    1  fish  cat
    1
    1
    1
    2  fish  cat
    2
    2
    2
    

    *每个四个:

    1 * 4 = 4

    4 - 1(基行)= 3 个副本

    第二次执行:

    N  NAME  AGE
    1  fish  cat
    1
    1
    1
    1
    1
    1
    1
    1
    1
    1
    1
    1
    1
    1
    1
    2  fish  cat
    2
    2
    2
    2
    2
    2
    2
    2
    2
    2
    2
    2
    2
    2
    2
    

    *每个有四个副本

    4 * 4 = 16

    16 - 1(基行)= 15 个副本

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-24
      • 2020-04-02
      • 1970-01-01
      相关资源
      最近更新 更多