1. 由于循环引用会生成无限循环的计算回路,因此计算中的错误信息会被带入整个回路中。即使错误的根源已被清除,错误信息(如#DIV/0!或 #REF!)也会继续出现,只能手动清除错误,这时可以利用IF语句以及ISERROR函数来设置错误追踪器,参照图9中例子 。

2. 另外,在模型中嵌入IF语句开关,可以将计算利息的方法,从基于平衡变量的均值(循环引用)调整为基于上一年度平衡变量(无循环引 用),而后再调整回来,参照图10例子。

 

循环引用的案例:


表4迭代计算的示意

  1 对于使用循环引用的模型而言,存在一个平衡机制,不仅是针对平衡变量利息的计算,同样针对主体平衡本身,见图11。通过嵌入ISERROR函 数来捕获错误。既然平衡机制已经嵌入了循环引用,就可以基于平衡变量的平均值来计算利息 。

2   如何运算?将Excel的最大迭代次数设为1,而不是默认的100,然后将 Excel 设为手动计算。这样,每按一次<Enter>键就能看到一步迭代计算 的结果 。

3   计算原理:“超额现金(循环贷款)”,即第34行中的每个单元格等于 第33行(“差值”)加上其本身,这被称为桶排序算法。首先存储初始差值,然后累加新增差值。通过该方式构建起平衡变量,每一次加上新增差值后的总值均被资产负债表读取。这样一来,资产负债表两侧的差值会变得越来越小。迭代计算会继续进行,直至新增差值通过了Excel最 大误差的检测才会停止。迭代计算示意图参照表4。

*在第三次选代计算中,该科目的减少是源于循环贷款产生的利息支出导致的留存收益的减少。