Google apps script 在google脚本中动态生成范围
我完全不熟悉谷歌应用程序脚本,正在努力动态生成一个范围 我在工具栏中创建了一个按钮,用于调用函数。我想要函数做的是基于当前单元格设置活动范围,但仅使用行。因此,如果用户在第6行的任何列上,它仍然只会将活动范围设置为(“A6:G6”) 到目前为止,我所拥有的只是Google apps script 在google脚本中动态生成范围,google-apps-script,Google Apps Script,我完全不熟悉谷歌应用程序脚本,正在努力动态生成一个范围 我在工具栏中创建了一个按钮,用于调用函数。我想要函数做的是基于当前单元格设置活动范围,但仅使用行。因此,如果用户在第6行的任何列上,它仍然只会将活动范围设置为(“A6:G6”) 到目前为止,我所拥有的只是 myFunction() { var ss = SpreadsheetApp; var onRow = ss.getActiveRange().getRow(); xl.setActiveRange(onRow, 1, 1,
myFunction() {
var ss = SpreadsheetApp;
var onRow = ss.getActiveRange().getRow();
xl.setActiveRange(onRow, 1, 1, 7);
}
我知道最后一行不是它是如何工作的,但我不明白这是什么。我想将onRow作为变量传入,并固定以下三个数字,分别表示列数、行数和列数。在电子表格中使用Google应用程序脚本时,需要小心不要混淆电子表格应用程序、电子表格、工作表和范围对象及其方法。在您的示例中,您误用了SpreadsheetApp对象 下面是一些示例代码,它实现了您想要的功能,由一个简单的菜单项控制。请注意,严格来说,不必在
setRangeByRow()中创建所有这些变量;为清晰起见,此处仅进行此操作:
/**
* Runs when the document is opened.
* Sets up menu controls.
*/
function onOpen() {
SpreadsheetApp.getUi().createMenu('Test Range Set')
.addItem('Select Range', 'setRangeByRow')
.addToUi();
}
/**
* Acquires the row of the current active cell
* and sets the active range to the first 7
* columns of that row.
*/
function setRangeByRow() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getActiveSheet();
var onRow = sheet.getActiveRange().getRow();
//Logger.log("ACTIVE ROW: "+onRow);
var range = sheet.getRange(onRow, 1, 1, 7);
sheet.setActiveRange(range);
}
我试着改玩床单课,但没能完全理解。这太完美了,感谢你正式帮助我克服了谷歌脚本的第一个障碍:)