自定义脚本返回的数组覆盖非空单元格

时间:2015-10-07 10:21:52

标签: google-apps-script

是否可以使脚本返回一个将覆盖非空单元格的值数组? 例如:我有一个包含以下字段的任务列表:'任务名称,估计时间为' 3w'。第3列是使用自定义函数计算的,该函数可以转换' 3w'到3 * 5 = 15(以天为单位)。自定义脚本获取范围并返回第二列中给定估计时间数组的结果数组。

一切正常,直到我决定连续并移动它以重新排序任务列表。一旦我移动那一行,比如上面一行,脚本会抱怨错误,因为移动的行包含一个非空值,其中使用的是自定义脚本自动计算的。要纠正它,我需要在第3列清除该行的值,然后脚本返回计算方式。

应该有一种方法来告诉脚本覆盖。有吗?

谢谢, 埃雷兹

1 个答案:

答案 0 :(得分:0)

使用isBlank()函数检查指定的单元格是否为空,以及clear()函数,以清除单元格中的值并提供新值。这是一个小样本:

function myFunction(){
  var ss  = SpreadsheetApp.getActiveSheet();

  var range = ss.getDataRange();

  var maxCol = range.getLastColumn();
  var maxRow = range.getLastRow();

  for (var i=0; i<maxRow; i++)
  {
    for (var j=0; j<maxCol; j++)
    {
      if(!ss.getRange(i+1, j+1).isBlank())
      {
        ss.getRange(i+1, j+1).clear();

      }
    }
  }
}