首页 > 解决方案 > 只在谷歌表格中调用自定义函数一次并将值保存到单元格

问题描述

我编写了一个自定义的谷歌应用程序脚本函数,该函数被谷歌表调用。在这个函数中调用一个 API 并返回这个 API 的结果,以便它显示在谷歌表的调用单元格中。

我现在的问题是每次打开文档时工作表都会调用此函数,并且有超过 80.000 个具有此函数的单元格。

是否可以将返回的值保存到单元格中,并且在返回值时不再调用自定义函数?我希望每个单元格只调用一次函数,即使我关闭文档并重新打开它。应该保存返回的值,直到将其他内容写入单元格。这将使我的工作表文档比当前状态更有用。

标签: google-apps-scriptgoogle-sheetscustom-function

解决方案


从问题

是否可以将返回的值保存到单元格中,并且在返回值时不再调用自定义函数?我希望每个单元格只调用一次函数,即使我关闭文档并重新打开它。应该保存返回的值,直到将其他内容写入单元格。这将使我的工作表文档比当前状态更有用。

仅使用自定义功能是不可能的。没有一个直接的解决方案可以实现这一点,为了保持简单,您应该寻找另一种方法来实现自定义功能所做的事情。

一种选择是使用触发器(包括自定义菜单/关联到绘图的函数)来检查应该具有自定义函数返回值的单元格是否为空,并在这种情况下用相应的值填充它。使用的最佳触发器取决于您的电子表格工作流程。


推荐阅读