Function 将行追加到特定位置
我有以下功能:Function 将行追加到特定位置,function,google-apps-script,google-sheets,Function,Google Apps Script,Google Sheets,我有以下功能: function addrow() { const ss = SpreadsheetApp.getActiveSpreadsheet(); const ws = ss.getSheetByName("Sheet1"); ws.appendRow(["apple", "orange", "banana"]); } appendRow仅将数组中的项目添加到电子表格上最后一行 如何使它从
function addrow() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const ws = ss.getSheetByName("Sheet1");
ws.appendRow(["apple", "orange", "banana"]);
}
appendRow
仅将数组中的项目添加到电子表格上最后一行
如何使它从指定的行(比如第10行)开始,然后继续添加行,“向下推”所有其他行?
因此,如果我将脚本设置为从第10行开始,当我执行时,项目将进入第10行,当我再次执行时,项目将再次进入第10行,上一次执行的项目现在将进入第11行等等。
appendRow
始终将数据追加到最后一行,对此我们无能为力
有很多可能的方法在页的中间追加,但是最简单的方法是使用<代码>插入式()/<代码>或其他<代码>插入式< <代码>函数:
insertRow
功能:
请随意逐个测试它们,看看它们是否适用于您的问题。它们通常相似,但在插入行的数量和位置上有所不同
代码:
样本数据:
样本输出:
注:
如果你急于只使用<代码> AppDeNe<代码>来追加该页的中间部分,那么就有一个方法,但不是最佳的解决方案,只是一个黑客攻击。以下是步骤:
appendRow
追加数据(由于第10行已被删除,现在的数据应该在第10行粘贴)setValues
根据变量的长度将第10个last的原始值粘贴到第11个last中非常感谢,这很有帮助
function addrow() {
const ss = SpreadsheetApp.getActiveSpreadsheet();
const ws = ss.getSheetByName("Sheet1");
var data = ["apple", "orange", "banana"];
// shift all rows down by one from row 10
ws.insertRows(10, 1);
// then insert data into blank row (10)
ws.getRange(10, 1, 1, data.length).setValues([data]);
}