我认为我对getRange或setValue的工作方式有一些基本的误解。
我想复制最后一行数据,第1-5列,然后将它们粘贴到第一行第1-5列的另一个电子表格中。
当我运行我的脚本时,它会将最后一行,第一列的值设置为第一行和所有5列。
因此,如果我在源数据中有Mon,Tues,Wed,Thur,Fri,那么第二个电子表格中粘贴的是Mon,Mon,Mon,Mon,Mon。
由于
function myFunction() {
// Last Row
var ss = SpreadsheetApp.getActiveSheet();
var lastRow = ss.getLastRow()
// Assign last row from source data to variable
var lastRowSourceData = ss.getRange(lastRow,1,1,5).getValue()
// Paste form values into master log
var makeEntryHere = SpreadsheetApp.openById('1kBfBHnNFyqC-ACyHs6Q09IYj2TzF3RWBwp-yvYtxd34').getSheetByName('sheet1').getRange(1,1,1,5);
makeEntryHere.setValue(lastRowSourceData);
}
答案 0 :(得分:2)
您的代码很好,分别正确push
到.getValue()
和.getValues()
到.setValue()
,它应该有效:
.setValues()