Google apps script I';我正在尝试将脚本改编为;提交;将多个单元格添加到另一张工作表中,该工作表在单元格A5中命名
有关的电子表格- A5中的值表示应将数据提交到哪张表 我对脚本编写还不熟悉,并且已经找到了一段简单的代码,看起来它会起到作用,但是因为我不理解其中的一部分,所以无法将其应用到我的工作表中Google apps script I';我正在尝试将脚本改编为;提交;将多个单元格添加到另一张工作表中,该工作表在单元格A5中命名,google-apps-script,google-sheets,Google Apps Script,Google Sheets,有关的电子表格- A5中的值表示应将数据提交到哪张表 我对脚本编写还不熟悉,并且已经找到了一段简单的代码,看起来它会起到作用,但是因为我不理解其中的一部分,所以无法将其应用到我的工作表中 function submitData() { var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheetByName("Tool Life"); var range = sheet.getRan
function submitData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Tool Life");
var range = sheet.getRange(1,5)
var data = range.getValue()
var datasheet = ss.getSheetByName(data);
//Input Values
var values = [[sheet.getRange("B5").getValue(), //tool
sheet.getRange("C5").getValue(), //reason
sheet.getRange("D5").getValue(), //replaced
sheet.getRange("E5").getValue(), //current
sheet.getRange("F5").getValue(), //new
sheet.getRange("G5").getValue(), //from length
sheet.getRange("H5").getValue(), //to length
sheet.getRange("I5").getValue(), //from diameter
sheet.getRange("J5").getValue(), //to diameter
sheet.getRange("K5").getValue(), //where used
sheet.getRange("L5").getValue(), //flagged
sheet.getRange("M5").getValue(), //set to measure
sheet.getRange("N5").getValue(), //name
sheet.getRange("O5").getValue(), //date
sheet.getRange("P5").getValue()]]; //comments
datasheet.getRange(datasheet.getLastRow()+1, 1, 1, 15).setValues(values);
}
我不明白最后一行代码上的数字是什么。我假设15代表列数或条目数
我猜测我可以在这一行中使用变量“data:var datasheet=ss.getSheetByName(data)代码>但因为它不起作用,我不能玩它。说明:
你很接近
- 根据您提供的电子表格,您需要获取单元格
刀具寿命表的A5。您正在调用
sheet.getRange(1,5)
,但这会给出cellE1。你应该使用
sheet.getRange(5,1)
或sheet.getRange('A5')
以获取正确的单元格
- 最好参考
值的长度,而不是硬拷贝范围。用它来代替:
datasheet.getRange(datasheet.getLastRow()+1, 1, values.length, values[0].length).setValues(values);
解决方案:
参考资料:
相关:
function submitData() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheetByName("Tool Life");
var range = sheet.getRange(5,1);
var data = range.getValue();
var datasheet = ss.getSheetByName(data);
//Input Values
var values = [[sheet.getRange("B5").getValue(), //tool
sheet.getRange("C5").getValue(), //reason
sheet.getRange("D5").getValue(), //replaced
sheet.getRange("E5").getValue(), //current
sheet.getRange("F5").getValue(), //new
sheet.getRange("G5").getValue(), //from length
sheet.getRange("H5").getValue(), //to length
sheet.getRange("I5").getValue(), //from diameter
sheet.getRange("J5").getValue(), //to diameter
sheet.getRange("K5").getValue(), //where used
sheet.getRange("L5").getValue(), //flagged
sheet.getRange("M5").getValue(), //set to measure
sheet.getRange("N5").getValue(), //name
sheet.getRange("O5").getValue(), //date
sheet.getRange("P5").getValue()]]; //comments
datasheet.getRange(datasheet.getLastRow()+1, 1, values.length, values[0].length).setValues(values);
}