【问题标题】:getValues() return undefinedgetValues() 返回未定义
【发布时间】:2017-01-06 09:32:39
【问题描述】:

我正在尝试将一些数据从一张纸复制并粘贴到另一张纸上。我有以下数据结构->

我要复制的内容(sheet1):

dataname  value
data1     value1
data2     value2
data3     value3
data4     value4

最终结果(sheet2):

day1 value1 value2 value3 value4
day2 value1 value2 value3 value4
day3 value1 value2 value3 value4

您可能会理解,sheet1 上的数据每天都会刷新并复制到 sheet2 上。

这是我正在使用的脚本:

function getdata() {
  var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet1");;
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("sheet2")
  var data = ss.getRange('B1:B10').getValues()[0][0];
  sheet.appendRow([data[1],data[1],data[2],data[3],data[4],data[5],data[6]]);
}

我知道这是一个非常基本的问题,但我仍然不明白 getValues() 的真正工作原理。使用上面的脚本,我得到以下结果:

undefined undefined undefined undefined undefined undefined undefined

这是为什么呢?我该怎么办?

谢谢!

【问题讨论】:

    标签: google-apps-script


    【解决方案1】:

    getValues() 返回 Object[][],这是一个值数组。
    当您运行var data = ss.getRange('B1:B10').getValues()[0][0]; 时,您会获取最左上角的值并将其保存在data 中。

    我不知道那个单元格中有什么,但我认为它是一个空字符串,因为您从偏移量 1 开始对其进行子集化,它返回 undefined 而不是抛出异常。

    你(可能)想要做的是这样的:

    var data = ss.getRange('B1:B10').getValues();
    sheet.appendRow([data[1][1],data[2][1],data[3][1],data[4][1],data[5][1],data[6][1]]);
    

    它从sheet1 中获取第 2-7 行的第二列并将其转置并附加到 sheet2。

    【讨论】:

      【解决方案2】:

      这里,在 data 变量中,只有 B1:B10 范围的第一个值被存储。您可以使用

      查看它的价值
      Logger.log(data);
      

      然后在你执行完代码之后去view->logs或者按ctrl+enter。

      现在,如果你想以二维数组格式存储工作表值,你应该使用这个:

      var data = ss.getDataRange().getValues();  //Here, ss is what you have declared earlier
      

      现在您可以使用记录器检查数据值。

      或者,如果您只想要数组中的 B1:B10 值,请这样写:

      var data = ss.getRange("B1:B10").getValues();
      

      现在你可以使用

      Logger.log(data);
      Logger.log(data[3]);
      

      你会得到你想要的。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-05-08
        • 2011-03-13
        • 2019-11-17
        • 1970-01-01
        • 1970-01-01
        • 2016-11-18
        • 2019-12-24
        • 2016-05-15
        相关资源
        最近更新 更多