【问题标题】:How do I add a checkbox in a google sheet row when a form appends a row of data当表单附加一行数据时,如何在谷歌工作表行中添加一个复选框
【发布时间】:2020-09-29 13:23:15
【问题描述】:

我有一个 google 脚本,可以向行中引用的电子邮件地址发送电子邮件。我使用复选框列来选择我希望将电子邮件发送到哪些行(电子邮件)。

不幸的是,我不能只添加一整列空复选框,因为每个附加行都会在复选框末尾添加新数据,在工作表的最下方。

我有一个函数,每次我运行它时都会在我的工作表所需的列中生成一个复选框,但我很难添加它,以便每次从我的表单提交一行时运行它。

这是页面的代码:

var url="https://docs.google.com/spreadsheets/d/1f8n0eRbUacX218zUTBmrOyPWp3wOpi6tOyU8v2UnQdc/edit#gid=0";

function addnewrow(rowData) {
  
  const currentdate= new Date();
  
   const ss=SpreadsheetApp.openByUrl(url);
  const ws=ss.getSheetByName ("districts");
  ws.appendRow([currentdate,rowData.name,rowData.email,rowData.phone,rowData.district,rowData.number,rowData.type,rowData.stalling,rowData.starter,rowData.fuel,rowData.damage,rowData.parts,rowData.service,rowData.other,rowData.comments]);
  return true;
  AddCheckBox(e)

function AddCheckBox(e) {
  var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("districts")  // Modified
  var criteria = SpreadsheetApp.DataValidationCriteria.CHECKBOX;
  var rule = SpreadsheetApp.newDataValidation().requireCheckbox().build();
  var range = sheet.getRange(sheet.getLastRow(), 14);
  range.clearContent();
  range.setDataValidation(rule);
}

真的希望每次添加行时都添加复选框 谢谢 丹

【问题讨论】:

  • 您是在谈论 Google 表单,它会在每次提交的表单上自动附加一行数据,还是从一些自定义表单中附加数据?
  • 嗨,我正在通过自定义表单附加数据

标签: google-apps-script google-sheets


【解决方案1】:

问题:return true;

  • 遇到返回语句后,您的函数将终止。并且不会执行以下行中所写的内容。
  • 因此,AddCheckBox(e) 永远不会被调用

【讨论】:

  • 非常感谢您的帮助...疏忽和快速修复!...退货声明的位置错误。现在可以了
  • @DanielReynolds 如果答案解决了您的问题,请单击答案左侧的勾选按钮,将答案标记为已接受。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-05
  • 2019-06-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多