Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script 删除数字之间的行和删除复选框行_Google Apps Script_Google Sheets_Rowdeleting - Fatal编程技术网

Google apps script 删除数字之间的行和删除复选框行

Google apps script 删除数字之间的行和删除复选框行,google-apps-script,google-sheets,rowdeleting,Google Apps Script,Google Sheets,Rowdeleting,嗨,库珀,谢谢你的密码。不幸的是,它似乎没有将数字12、13和14之间的行计算为空白,因此不会删除它们。你给我的原始脚本在我没有复选框的时候起作用,但现在有复选框它不起作用。是否有任何方法可以删除行,包括未勾选/勾选的复选框和非复选框列的空数据?我在我原来的帖子中添加了“新图片供参考”来说明我的意思 如何检查您的数据是否包含复选框 应用程序脚本具有查询复选框是否已选中的方法 您可以使用此方法查询单元格是否包含复选框: 如果单元格是复选框并已选中-isChecked()将返回true 如果单元

嗨,库珀,谢谢你的密码。不幸的是,它似乎没有将数字12、13和14之间的行计算为空白,因此不会删除它们。你给我的原始脚本在我没有复选框的时候起作用,但现在有复选框它不起作用。是否有任何方法可以删除行,包括未勾选/勾选的复选框和非复选框列的空数据?我在我原来的帖子中添加了“新图片供参考”来说明我的意思

如何检查您的数据是否包含复选框
  • 应用程序脚本具有查询复选框是否已选中的方法
  • 您可以使用此方法查询单元格是否包含复选框:
    • 如果单元格是复选框并已选中-
      isChecked()
      将返回
      true
    • 如果单元格是复选框且未选中-
      isChecked()
      将返回
      false
    • 如果单元格根本不是复选框-
      isChecked()
      将返回
      null
不幸的是,从您的问题中,我无法理解我们的确切问题,但我希望以下示例对您有所帮助,作为参考:它检查一行是否包含复选框,如果它发现至少一个复选框,则将删除该行:

const ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Potential Matrix");
  const rg=ss.getDataRange();
  const vs=rg.getValues();
  let d=0;
  vs.forEach(function(r,i){
    if(r.join('').length==0 || r.join('')=='false') {
      ss.deleteRow(i+1-d++);
    }
  });
  ss.insertRowBefore(1).getRange("1:1").clearFormat(); 
const ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName(“潜在矩阵”);
var行=5;
var lastColumn=ss.getLastColumn();
var rg=ss.getRange(5,1,1,最后一列);
对于(变量i=0;i
您是否做过任何事情来了解代码的功能并试图修改它?所以这不是免费的编码服务。请参见告诉我这些行的
r.join()
是什么。您好,是的,我从头开始创建了基本表的代码,并学会了如何构建数据验证,以及如何将复选框插入到代码中。据我所知,这些行的“r.join()”正在搜索“(“”)”(等于空白数据)。因此,代码正在搜索空白数据,如果为true,则删除行。我不知道如何调整代码以搜索行中的复选框,这就是我需要帮助的原因,我不打算将其用作免费编码服务,我很高兴学习并能够理解它。
  const ss=SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Potential Matrix");
  var row = 5;
  var lastColumn = ss.getLastColumn();
  var rg=ss.getRange(5,1,1, lastColumn);
  for (var i =0; i < lastColumn; i++){
    var checked = rg.getCell(1, (i+1)).isChecked();
    Logger.log(checked);
    if (checked != null){
      ss.deleteRow(row);
      return;
    }
  }