Google表格 - 克隆行但仅包含来自一个单元格的数据

时间:2016-10-27 10:57:56

标签: google-sheets

我希望克隆一行3x,但只保留一列的数据。

基本上我有以下[名称/时间/预订],每行都填充了所有3个属性,我试图在每个当前行下面创建3个空白行,这些行只填充了人名。< / p>

无法在脚本中如何操作,也无法找到执行此操作的插件。我的数据集超过10,000,因此不能手动执行此操作。

我拥有的: enter image description here

我想要的: enter image description here

2 个答案:

答案 0 :(得分:0)

更新的代码:

function duplicateRows() {

var sh, v, arr, c, b;

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


function makeEmptyArrayXEl(num) {
var arr = [];
for (var i = 0; i < num; i++) {
    arr.push("")
}
return arr;
}

答案 1 :(得分:0)

这对你有用吗?它需要在原始数据集中的Booking左侧的空闲列。下面的公式是一张新表。

=ArrayFormula(sort({A2:A4,B2:B4,C2:C4;A2:A4,D2:D4,D2:D4;A2:A4,D2:D4,D2:D4;A2:A4,D2:D4,D2:D4},1,FALSE))