我是Google应用脚本电子表格项目的新手。我想将输入提供给一个函数,该函数会将输入值动态地放入电子表格中。以下是我的代码,
function setSheetValue(value,value2,value3,value4,value5){
var doc = SpreadsheetApp.getActiveSpreadsheet();
var sheet = SpreadsheetApp.openById('********')
var range = sheet.getRange('A1');
range.setValue(value);
var range = sheet.getRange('B1');
range.setValue(value2);
var range = sheet.getRange('C1');
range.setValue(value3);
var range = sheet.getRange('D1');
range.setValue(value4);
var range = sheet.getRange('E1');
range.setValue(value5);
}
我已将4个值作为输入,并将此值放入已硬编码的电子表格单元格中。因此,如果我再次运行,则值将被覆盖。现在我想要的是,如果我在第一次运行中考虑A1时增加了值,那么下次运行时我将在A2中添加值。任何帮助将不胜感激!
这个答案怎么样?
在这个答案中,我想建议使用appendRow
的方法。示例脚本如下。
请复制以下脚本并将其粘贴到脚本编辑器。
function setSheetValue(...values) {
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var sheet = spreadsheetspreadsheet.getSheets()[0];
sheet.appendRow([...values]);
}
// Please run this function.
function run() {
setSheetValue("value1", "value2", "value3", "value4", "value5");
}
run
时,"value1", "value2", "value3", "value4", "value5"
被置于列“ A”至“ E”的最后一行的下一行。当您再次运行它时,这些值将附加到先前值的下一行。sheet
的[var sheet = SpreadsheetApp.openById('********')
,是电子表格的第一个标签。因此,在这种情况下,第一张纸与getSheets()[0]
一起使用。如果要将此脚本用于特定的工作表,请将getSheets()[0]
修改为getSheetByName("Sheet1");
。