首页 > 解决方案 > 插入新数据而不是复制整行 Google 表格

问题描述

我在一张表中有一列数据(日期),它作为行转置到另一张表中。每个日期在目标表中都有其下方的数据列。

我只想将作为空白列插入的源工作表的新数据移动到目标工作表而不影响现有数据。我已经在目标表中添加了“期望的结果”选项卡,以防我的查询令人困惑。

请帮助

源表

目的地表

标签: google-apps-scriptgoogle-sheets

解决方案


如果您有两个数组,并且需要使用新数组的非空元素更新旧数组的空元素,则可以这样做:

var old_data = ['a', 'b', '', 'd', '',  ''];
var new_data = ['x', '',  'c', '', 'e', ''];

var updated_data = [];
for (var i in old_data) {
    if (old_data[i] != '') {
        updated_data.push(old_data[i]);
    } 
    else { 
        updated_data.push(new_data[i]);
    }
}

console.log(updated_data2); // [ 'a', 'b', 'c', 'd', 'e', '' ]

或者:

var old_data = ['a', 'b', '', 'd', '',  ''];
var new_data = ['x', '',  'c', '', 'e', ''];

var updated_data = old_data.map((old, i) => old || new_data[i]);

console.log(updated_data);  // [ 'a', 'b', 'c', 'd', 'e', '' ]


推荐阅读