我无法复制SpreadSheet数据

时间:2019-09-24 14:15:57

标签: google-apps-script google-sheets spreadsheet

我正在尝试从特定列复制数据并将其放入正确的月份,但是错误始终出现:

  

“数据中的行数与范围中的行数不匹配。数据为1,但范围为5。”

代码:

    function reDatas() {

      var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Register');   
      var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Jan'); 

      sheet2.getRange("D6:D10").setValues([[
        sheet1.getRange('A4').getValue(),
        sheet1.getRange('B4').getValue(),
        sheet1.getRange('C4').getValue(),
        sheet1.getRange('D4').getValue(),
        sheet1.getRange('E4').getValue()]])
    }  

enter image description here

2 个答案:

答案 0 :(得分:1)

sheet2.getRange(“ D6:D10”)。setValues是否包含此范围以包含您要传递的像A1:E10这样的单元格?

答案 1 :(得分:0)

只需要将表示1行5列的数组转换为5行1列的数组即可。

function reDatas() {

  var sheet1 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Register');   
  var sheet2 = SpreadsheetApp.getActiveSpreadsheet().getSheetByName('Jan'); 

  sheet2.getRange("D6:D10").setValues([[
    sheet1.getRange('A4').getValue()],[
    sheet1.getRange('B4').getValue()],[
    sheet1.getRange('C4').getValue()],[
    sheet1.getRange('D4').getValue()],[
    sheet1.getRange('E4').getValue()]])
}  

史蒂芬(Stéphane)