Google脚本编辑器-清除单元格(带有公式的单元格除外)

时间:2020-05-03 12:13:19

标签: google-apps-script google-sheets google-apps-script-editor

我是新来的。我需要清除Google电子表格单元格的帮助。

但是,我要清除的单元格仅包含数字。换句话说,在运行宏后,带有字符串和公式的单元格将保持清除状态。这样,在清除整个工作表后,我无需再次将这些公式输入到单元格中。

有人可以帮我吗?

我尝试过此方法:但是它清除了我不想要的所有内容。

factorise (n, ps)
  | mod n f /= 0  =                        -- is the test correct?
                    v : factorise (v, ps)  -- is it really v : ... ?
  | otherwise     = factorise (n, tail ps)
     where
       f = head ps 
       v = div n f

我之所以不想指定没有公式要清除的单元格,是因为这不是简化代码的理想方法,因为我需要列出所有没有公式的单元格来简化代码。明确。另外,如果公式中的单元格有任何更改(例如,现在A10(具有公式)现在变为A11),我需要进入脚本编辑器并再次编辑单元格引用,以将其更改为清除单元格A10而不是单元格A11。

因此,我正在考虑是否有解决方法?

谢谢。

1 个答案:

答案 0 :(得分:1)

尝试一下:

function myFunction() {
  var sheet = SpreadsheetApp.getActive();
  sheet.getRange('A1:S1500').clearContent();
  var fA=sheet.getRange('A1:S1500').getFormulas();
  var vA=sheet.getRange('A1:S1500').getValues();
  vA.forEach(function(r,i){
    r.forEach(function(c,j){
      //if no formula and a number
      if(!fA[i][j] && !isNaN(c)) {
        sheet.getRange(i+1,j+1).setValue('');
      }
    });
  }); 
}

isNan()