计算excel依赖公式的顺序

时间:2014-03-25 15:54:47

标签: excel vba excel-vba dependencies

我想了解如何相互依赖的excel公式计算我对订单和流程感兴趣

简单的例子 例如我在excel电子表格中有两个公式,

cell A4 contains =SUM(A1:A3) 
cell A5 contains =Round(A4)

我假设A5等待直到计算出A4并且内部由excel跟踪并实现了以某种方式

  1. 我的假设是对的吗?
  2. 我想更好地理解这个" 某种程度"
  3. 可能是excel使用一些依赖图,是否涉及线程?等任何有助于我理解的东西!

    问题背后的动机是,我有一些来自某些第三方软件的Excel-Addin,我在工作表中使用的公式让我怀疑每个单元格都在等待其他单元先执行,因此进入锁定状态。

1 个答案:

答案 0 :(得分:0)

Excel构建一个依赖关系树,并按照您期望的顺序遍历它计算每个单元格。但是,由于可以存在循环引用,因此可以进行多次传递,直到没有任何变化(或者变化非常小)。最大通过由"迭代"设置。

在Excel 2007及更高版本中,支持多线程计算。

对于没有循环引用的简单情况,如果Excel冻结,很可能第三方插件正在做一些时髦的事情。以下是MSDN文章详细介绍了计算过程:http://msdn.microsoft.com/en-us/library/office/bb687891(v=office.15).aspx