我在Google应用中使用.getValues()并未产生预期效果

时间:2017-10-31 22:42:56

标签: google-apps-script google-sheets

我的Google电子表格中包含以下功能:

function endOfAuction() {
  var sheet = SpreadsheetApp.getActiveSpreadsheet();
  var thisTab = sheet.getActiveSheet();
  var thisTabName = thisTab.getName();

  var player = thisTab.getRange("C12:L12").getValues();
  var highbid = thisTab.getRange("C13:L13").getValues();
  for (var i = 0; i < 10; i++) {
    Logger.log('Player: ' + player[0][i] + ' Bid: ' + highbid[0][i]);
  }
}

当我执行它然后查看执行记录时,我得到:

[17-10-31 15:15:57:207 PDT] Logger.log([Player: P5 Bid: 60, []]) [0 seconds]
[17-10-31 15:15:57:208 PDT] Logger.log([Player: P2 Bid: 50, []]) [0 seconds]
[17-10-31 15:15:57:209 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:209 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:210 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:210 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:211 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:212 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:212 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:213 PDT] Logger.log([Player: - Bid: 0, []]) [0 seconds]
[17-10-31 15:15:57:364 PDT] Execution succeeded [0.311 seconds total runtime]

char值“Player”显示OK。但数字值“Bid”在数字后面有这个垃圾字符串,[]]。这里发生了什么?我究竟做错了什么?我希望将这些数字添加到其他单元格,但这不起作用,为什么?

*****添加了信息*****

我正在执行此脚本的电子表格如下所示:

我不允许发布图片,但可以在此处找到 http://xx.board18.org/images/BidSheet.png

我的最终目标是能够使用第12行中的值来选择另一个工作表[tab]中的单元格,然后将第13行中的值添加到这些单元格中。但“highbid [0] [i]”dos似乎不包含数值。

1 个答案:

答案 0 :(得分:0)

执行转录显示的是对Google Apps脚本服务的调用,显示参数值。

Logger.log()一个有两个值的数组。

  

Logger.log([Player:P5 Bid:60,[]])

在上面一行

  • 第一个值Player: P5 Bid: 60'Player: ' + player[0][i] + ' Bid: ' + highbid[0][i]
  • 的结果
  • 第二个值[]是一个空数组,对应于一个空的可选参数。

要查看Logger.log()打印的日志,而不是查看Execution Transcript,请单击View菜单,然后单击Logs或按 Ctrl + Enter

参考