如何使用在另一个单元格中作为字符串编写的公式[评估Google电子表格]

问题描述 投票:5回答:1

我阅读了几篇关于Google Spreadsheet缺少评估功能的旧帖子。 2016年有什么解决方案吗?

最简单的例子。

  • 'A1'包含以下字符串:UNIQUE(C1:C5)
  • 'B1'我想用它来评估用'A1'写的独特公式。

我试过用这种方式连接:'B1'包含="="&A1但结果是字符串= UNIQUE(C1:C5)。我也试过了间接公式。

有什么建议打破最后的希望吗?

附加说明

目的是在电子表格中编写公式,并通过其他几个电子表格使用这些公式。因此,任何改变都必须在一个地方完成。

google-sheets formulas evaluate
1个回答
4
投票

Short answer

使用包含var formula = origin.getValue()之类的脚本来获取字符串和destination.setFormula(formula)之类的东西来返回公式。

Explanation

正如OP已经提到的,Google表格没有EVALUATE()内置函数。无法使用自定义函数,因为自定义函数只能返回一个或多个值,但无法修改其他单元格属性。

由自定义菜单,事件或Google Apps脚本编辑器触发的脚本可用于更新指定单元格的公式。

由于公式将保留为字符串,因此可以更容易地将它们保存在脚本中而不是电子表格本身中。

以下是一个非常简单的脚本,它将指定的公式添加到活动范围。

function addFormula() {
  var formula = '=UNIQUE(C1:C5)';
  var range = SpreadsheetApp.getActiveRange();
  range.setFormula(formula);
}
© www.soinside.com 2019 - 2024. All rights reserved.