Google电子表格 - 如何将单个数据从一个工作表复制到另一个工作表中的单元格?

时间:2016-09-22 19:56:33

标签: google-apps-script google-sheets

我正在尝试实现将第1页上的特定单元格中的值复制到工作表2上的特定单元格的函数。下面是代码 -

function RecordEOD() {
  var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
  var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet2");
  var inv    = sheet1.getRange("R2").getValue(); // this is inventory price
  var cm_inv = sheet1.getRange("S2").getValue(); // this is inventory @ store
  var curr   = sheet1.getRange("T2").getValue(); //took pl data which we want to store
  var ind  = sheet1.getRange("V2").getValue(); // took nifty value which we want to store
  var cell2 = sheet2.getRange("J2")




  inv.setValues((cell2),{contentsOnly:true});

     //inv.copyTo(sheet1.getRange("J2"), {contentsOnly:true}); 
     //var source_range = source_sheet.getRange("A10:G10");
     //var target_range = target_sheet.getRange("A1:G1");
     //ts.getRange(A1Range).setValues(SData);
     //sheet2.getRange(row, 2).setValue(nifty );



}

尝试了我可以在stackoverflow上找到的各种公式但没有帮助。

尝试的每个功能的示例错误 -

TypeError:在对象2108427.9中找不到函数setValues。

1 个答案:

答案 0 :(得分:1)

getRange为您提供Range对象。 getRange().getValue()为您提供了值(不会有setValues方法)。并且`setValues'需要一个数组作为它的第一个参数。

你可以试试这个

...
var inv   = sheet1.getRange("R2");
var cell2 = sheet2.getRange("J2").getValue();

inv.setValue(cell2);

顺便说一句。 Range类的api文档位于https://developers.google.com/apps-script/reference/spreadsheet/range