gpt4 book ai didi

google-apps-script - 向命名范围添加一行

转载 作者:行者123 更新时间:2023-12-05 01:38:10 29 4
gpt4 key购买 nike

我在 Google 表格中有一个命名范围 (A1:K14)。我要做的就是在命名范围的底部添加一个新行。这似乎是一件容易的事。命名范围不会使用此代码扩展,我也没有收到错误消息。它确实在命名范围之外插入了一个新行,这不是我想要做的。如果我更改为 insertRowBefore (lastRow),则会插入新的空白行并扩展命名范围。我正在自学 GAS,所以这可能是我的一个简单错误

var sheet = SpreadsheetApp.getActiveSheet()
var Range = sheet.setActiveRange(range);
var data = Range.getValues();
Logger.log(range.getA1Notation());
var lastRow = SpreadsheetApp.getActiveSheet().getRange('DataRange').getNumRows();
SpreadsheetApp.getActive().insertRowAfter(lastRow);
return range;

最佳答案

向命名范围添加行和/或列

此函数默认设置为添加一行。

//r is number of rows to add
//c is number of columns to add
function addRowAndColumnsToNamedRange(name,r,c) {
var name=name||'One';//default name
var r=r||1;//default number of rows to add
var c=c||0;//default number columns to add
var ss=SpreadsheetApp.getActive();
var nrgA=ss.getNamedRanges();
for(var i=0;i<nrgA.length;i++) {
if(nrgA[i].getName()==name) {
var nr=nrgA[i];
var h=nr.getRange().getHeight();
var w=nr.getRange().getWidth();
var sh=nr.getRange().getSheet();
var row=nr.getRange().getRow();
var col=nr.getRange().getColumn();
var rg=sh.getRange(row,col,h+r,w+c);
ss.setNamedRange(name,rg);
break;
}
}
}

Class NamedRange

Class Range

关于google-apps-script - 向命名范围添加一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60010308/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com