Google apps script 将复选框重置为false-实施的解决方案不起作用

Google apps script 将复选框重置为false-实施的解决方案不起作用,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我有一列复选框,用户可以将其设置为true或false-我想在点击按钮时运行Google Apps脚本,该按钮会将所有复选框的值重置为false 我发现了一个相关的问题,并尝试实施。不幸的是,它似乎并没有达到预期的效果,而且我对应用程序脚本了解不够,无法理解原因。以下是我的代码(仅从Tanaike的解决方案中修改): 功能重置板(){ var sheet=SpreadsheetApp.getActiveSheet(); var dataRange=sheet.getRange('L5:L');

我有一列复选框,用户可以将其设置为true或false-我想在点击按钮时运行Google Apps脚本,该按钮会将所有复选框的值重置为false

我发现了一个相关的问题,并尝试实施。不幸的是,它似乎并没有达到预期的效果,而且我对应用程序脚本了解不够,无法理解原因。以下是我的代码(仅从Tanaike的解决方案中修改):

功能重置板(){
var sheet=SpreadsheetApp.getActiveSheet();
var dataRange=sheet.getRange('L5:L');
var values=dataRange.getValues();
对于(变量i=0;i
这是工作表-L列中的复选框是我试图重置的复选框。在我按下按钮执行脚本后,它表示脚本已完成,但没有任何更改:

有没有一个简单的错误可以解释为什么这不起作用?

  • 您希望将单元格“L5:L”的复选框更改为
    false
  • 您希望使用谷歌应用程序脚本实现这一点
如果我的理解是正确的,那么这个答案呢?请把这看作是几个可能的答案之一

修改点:
  • 在脚本中,
    值[i][j]==false。在这种情况下,
    值[i][j]
    false
    进行比较。因此,当您使用此脚本时,请修改为
    values[i][j]=false
  • 在这种情况下,当运行
    resetBoard()
    时,是否取消选中“L5:L”的所有复选框
修改脚本: 参考:

如果我误解了你的问题,而这不是你想要的方向,我道歉。

哦,太棒了,它工作得很好!我不知道有一个更简单的解决方案,谢谢:)。你知道为什么第一个解决方案可能不起作用吗?@Lou谢谢你的回答。我很高兴你的问题解决了。关于你的脚本问题,我忘了添加修改点。所以我加了它。你能确认一下吗?哦,我明白了,谢谢!所以我假设,
=
用于比较,
=
用于赋值。再次感谢您的帮助:)
function resetBoard() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var dataRange = sheet.getRange('L5:L');
  var values = dataRange.getValues();

  for (var i = 0; i < values.length; i++) {
    for (var j = 0; j < values[i].length; j++) {
      if (values[i][j] == true) {
        values[i][j] == false;
      }
    }
  }

  dataRange.setValues(values);
}
function resetBoard() {
  SpreadsheetApp.getActiveSheet().getRange('L5:L').uncheck();
}