我进行了长时间的搜索和大量的代码试验,但找不到我要找的东西。也许有人在那里可以提供帮助?
我在单元格 A1 中有一个带有复杂公式的 Google 电子表格。有时,当公式计算结果时,单元格会说“正在思考...”几秒钟。
我有一个脚本“myFunction()”,它取决于单元格 A1 中的值。如果单元格显示“正在思考...”,它将无法正常运行,因此我试图创建另一个脚本,等待公式完成“思考”,然后执行 myFunction()。
这是我到目前为止所拥有的:
function waitMyFunction () {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var s = ss.getSheetByName('Sheet1');
var range = s.getRange('A1:A1') // range where I want to make sure 'Thinking' is done
var values = range.getValues();
var string = values.toString();
var loading = "Thinking...";
while (string.search(loading) ==! 0); {
(Utilities.sleep(10000)); // Wait for 10 seconds
}
myFunction();
};
问题是,无论单元格 A1 中的值是什么,脚本似乎都会等待 10 秒。即使公式不是“思考”,它也会等待。我需要这个脚本快速运行,我可以忍受它需要 10 秒,这是公式思考的奇数时间,但不是每次都!
谁能指出我正确的方向?我花了几个小时试图解决这个问题。如果有人有任何想法,我们将非常感谢您的帮助。
非常感谢您的关注。