我撰寫了一個代碼,用于在關鍵字下方的 google 表格中插入一行(有點笨拙,但我不介意,除非有人想辦法解決這個問題)。問題是,我想在其下方添加 250 行,作為應用腳本的新手,我不確定在哪里指定我希望它為我添加的行數。
這是我得到的代碼的樣子:
function addRows() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var EditSheet = ss.getSheetByName("Testing"); //source sheet
var LastRowEdit = ss.getLastRow();
for(var i = 1; i <= LastRowEdit; i )
{
if(EditSheet.getRange(i,1).getValue() == 'add') //keyword
{
EditSheet.insertRowAfter(i);
}
}
}
我很想聽聽你的建議,我可以如何調整它以符合我的目標。
謝謝你們!
uj5u.com熱心網友回復:
在您的情況下,如何使用insertRowsAfter(afterPosition, howMany)而不是insertRowAfter(afterPosition)?那么,下面的修改怎么樣?
從:
EditSheet.insertRowAfter(i);
到:
EditSheet.insertRowsAfter(i, 250);
順便說一下,在您的腳本中,getValue()是在回圈中使用的。在這種情況下,工藝成本變高。為了降低成本,下面的改裝怎么樣?
修改后的腳本:
function addRows() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var EditSheet = ss.getSheetByName("Testing");
var LastRowEdit = ss.getLastRow();
var row = EditSheet.getRange("A1:A" LastRowEdit).getValues().map(([a]) => a).indexOf("add");
if (row != -1) {
EditSheet.insertRowsAfter(row 1, 250);
}
}
參考:
- insertRowsAfter(afterPosition, howMany)
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/367947.html
上一篇:谷歌應用程式腳本打開新檔案
