Excel 与 Sheets:使用 rand() 作为工作表计算的自主触发器的用例?

Excel 与 Sheets:使用 rand() 作为工作表计算的自主触发器的用例?

我最近读到一篇关于该rand()函数的相当精彩和新颖的用法的文章,该函数用于在 G Sheets 上进行(功能上)实时计算,而与实际打开的工作表无关。作为一名 Excel 用户,这让我很好奇,原生 Excel 中是否存在任何类似的概念用例(即仅使用函数)?

以供参考,是我所指的文章。

答案1

不断改变引用的单元格值,因此公式不断重新计算。

  1. 当引用的单元格发生变化时,Sheets 会重新计算大多数函数。
  2. Sheets 每次都会重新计算易失性函数任何无论函数是否引用单元格值,它都会发生变化。
  3. 工作表名称不是引用单元格的一部分价值所以公式=CELL("address", Sheet1!A1)如果唯一的更改是工作表的名称,则不会自动重新计算,但公式中的实际单元格引用将立即更新。
  4. 任何易失性函数都可以实现该目标,因为它依赖于以下事实:
    1. 问题:CELL 函数返回的字符串 address可以在不改变单元格值的情况下进行更改。
    2. 优点:CELL 函数的address无论单元格的值如何或其发生任何变化,参数都会返回相同的结果。

Excel 是否也面临同样的问题?

否。在 Excel 中,如果您更改引用的工作表名称=CELL("address", Sheet1!A1)公式返回的值将立即更新。

  1. Ben 解决的这个问题似乎是 Google 的疏忽。我明白 Google 为什么要推迟 IMPORTRANGE 等其他更新,但这个更新毫无意义。我可以看到它只是被忽视了。
  2. Ben 的示例解决方案很有趣,了解这一点在某些时候可能会有用。
  3. 从性能角度来看,通常不鼓励不必要地使用多个 volatile 函数,因为需要不断重新计算。考虑到实现开销,我认为许多替代方案更有意义。这有点像整天整夜地在家里慢跑,以防意外的包裹到达,而每增加一张纸,就意味着邻居在另一所房子里做同样的事情。
  4. 除了该用例之外,我有兴趣了解它的任何其他应用。

相关内容