检查公式

时间:2016-10-09 07:24:38

标签: google-sheets

我希望能够检查一个范围,以确保其中的所有细胞都有一个公式;这会让我知道列中的任何单元格是否已更改为静态数据。换句话说,如果范围中的任何单个单元格不是公式,则它应该返回FALSE。

我试过了:

=ARRAYFORMULA(ISFORMULA(A1:A6))

但仍然只检查A1中的值。有谁知道我怎么能这样做?

1 个答案:

答案 0 :(得分:3)

您可以使用自定义功能(见下文)。它需要一个范围作为输入(但作为一个字符串)和一个绕过caching的虚拟值,例如

=onlyFormulas("A1:A4", E1)

如果要更新输出,则需要更改E1。

自定义功能

function onlyFormulas(range, dummy) {
  var f = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet().getRange(range).getFormulas();
  for (i = 0; i < f.length; i++)
    if (f[i] == '') {
      return false;
    }
  return true;
}