javascript - Google App Script - 如何获取指定行的所有值?

标签 javascript google-apps-script google-sheets

我对 Google App 脚本有点陌生,但我认识到它本质上是带有 google 库等的 javascript。

至于我的问题,我正在尝试制作一个脚本,该脚本在编辑特定范围内时调用具有整行值的函数。要设置范围“边界”,我目前得到了这个:

function onEdit(e){
  if (
    e.range.columnStart >= 3 &&
    e.range.columnEnd <= 9 &&
    e.range.rowStart >= 13 &&
    e.range.rowEnd <= 101
  )
  {
    Logger.log("Edit in range");
    var editRow = (e.range.rowStart, e.range.rowEnd)
    Logger.log("Edit Row: " + editRow);
  }
  else
  {
    Logger.Log("Edit outside of Range");
  }
}

当前,如果编辑在指定范围内,则此功能有效并记录,并且还记录在哪一行中进行了编辑。我需要弄清楚的是如何获取该编辑单元格的整行的值所以我可以将它传递给一个函数。

我该如何去做呢?

最佳答案

您想要获取编辑范围的值。

您已经使用过 Event objects 识别和评估编辑范围的限制。 您可以使用相同的信息来:

  • getSheet()
  • getRange(行、列、numRows、numColumns),然后
  • 从范围中获取Values()
<小时/>
function onEdit(e){



  if (
    e.range.columnStart >= 3 &&
    e.range.columnEnd <= 9 &&
    e.range.rowStart >= 13 &&
    e.range.rowEnd <= 101
  )
  {
    Logger.log("Edit in range");
    var sheet = e.range.getSheet();
    var editRowRange = sheet.getrange(e.range.rowStart,e.range.columnStart,e.range.rowEnd-e.range.rowStart+1,e.range.columnEnd-e.range.columnStart+1);
    var editRow = editRowRange.getvalues();
    Logger.log("Edit Row: " + editRow);
  }
  else
  {
    Logger.Log("Edit outside of Range");
  }
}

关于javascript - Google App Script - 如何获取指定行的所有值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58787013/

相关文章:

swift - 编辑 Google 表格 Swift 时出错

google-apps-script - Google Hangout Room 中的聊天机器人可以访问活跃用户吗

javascript - 在线表单更新谷歌表格后如何发送电子邮件?

Javascript 行为异常

javascript - 如何在 Phaser 游戏中向每个用户显示不同的 map

google-apps-script - 如何在 Google Apps 脚本/表格的 IF 语句中比较当前编辑时间与指定条件时间?

google-sheets - 具有两个条件的 Google 电子表格 COUNTIF 公式等效

javascript - Google 表格突出显示每行脚本中的最低数字

javascript - 在javascript中异步使用分块数据

javascript - AWS : Layer code not found when using "sam invoke local"