【问题标题】:How to call a Google Sheet formula from within a custom function?如何从自定义函数中调用 Google 表格公式?
【发布时间】:2020-04-23 15:09:47
【问题描述】:

是否可以从您自己的 Google Apps 脚本自定义函数中调用任何 Google Sheets formulas?如果有,怎么做?

显然,像在工作表中那样仅使用公式名称是行不通的。像这样,这就是我希望的工作:

function myCustomFunction() {
  return TDIST(1,30,1); // calling =myCustomFunction() does not work due to TDIST giving a ReferenceError, even though =TDIST(1,30,1) works inside the spreadsheet
}

但是由于 Google 的内置公式可能依赖于一些 JS 实现的函数,如果没有 API 以便我们可以轻松地重用这些函数,那就太奇怪了。我查看了Google Sheets API reference,但它似乎是为从外部服务调用您的自定义函数而设计的。看来你可以call Google's own formulas through such a POST request。但这似乎非常麻烦,因为您应该能够直接从与特定 Google Sheet 环境相关联的自定义脚本中直接引用它们。如果不是,那么在自定义函数中使用这些内置公式函数的最简单的方法是什么?

【问题讨论】:

  • 嗯..不,不是真的。在我的特定自定义函数中,我不想直接与电子表格交互,而只是直接使用内置函数,从脚本本身而不是电子表格输入参数。
  • 特别强调this answer中的“旧帖”。简而言之,不,你不能那样做。最少迂回的方式是this
  • 只是直接使用内置函数,从脚本本身输入参数,。提及myCustomFunction 好像它是从电子表格调用的自定义函数会给出不同的视图。不管怎样,答案都是一样的。不可能。
  • myCustomFunction 通常是从电子表格中调用的,是的。我不需要评估一个表达式(如=1+2),使用通用的eval() 对我的想法来说太宽泛了。我敢肯定,出于安全考虑,他们没有实施这一点。我希望默认公式使用的函数在某种 API 中公开。谢谢您的输入。

标签: google-apps-script google-sheets google-sheets-formula custom-function


【解决方案1】:

这是 feature request since 2011,已被 Google 以团队间问题为由拒绝。

状态:ev....@google.com 无法修复(不可行)

我们已向电子表格团队提出要求,目前将其标记为“不会修复”。

显然,电子表格团队尚未做出回应。相关产品论坛post 表示,Google 无意将电子表格功能与脚本集成。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-10-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-20
    • 2022-11-24
    相关资源
    最近更新 更多