#DIV/0!错误

1  当试图让某个数字除以0时, Excel会如此报错 。

2  当用户清除了模型中的测试数据之后,则会显示#DIV/0!错误。或许,当模型被启用时,会有⼀些数值被输⼊其中,可令公式得以正确计算。

3   所以,当编写任意涉及除法的公式时,应该利用IF语句针对错误陷阱采取⼀些措施。例如公式“=D10/D12”,应该写成 “=IF(D12,D10/D12,0) ”( D12是D12< >0的简写),也可以 写成“=IF( D12,D10/D12,"na")” 。

4  但有时公式可能会读取另⼀单元格的内容作为计算的⼀部分。如果第⼀个单元格显示 “na”,那么第⼆个单元格的计算将会遇到问题,因为其⽆法利用⽂本进⾏计算。第⼆个单元 格会显示#VALUE!错误,为了避免出现问题,就使用返回0 的第⼀个公式,然后利用Excel的格式化功能,使得当数值为0时,显示“na”。

#VALUE!错误

当编写的公式的某个因⼦中包含了⽂本信息,则通常会出现该类型的报错信息。

#NAME?错误

  当公式所引用的区域名称并不存在时,会显示该种类型的报错信息。这可能是由于区域名称拼写错误,或者是某个区域 名称是过去⽣成并使用过的,但现在已经被删除了。函数名称拼写错误同样会导致显示该种错误。

#REF!错误

当公式引用了⼀个元效单元格时会出现该种类型的报错信 息。如从单元格 A10中的公式开始:=Al+ 10。如果将该公式向上⼀⾏复制并填充,则公式会返回 #REF! 错误。在复制过 程中, Excel会试图进⾏相对引用,因此当向上⼀⾏复制公 式时,引用的单元格会变为 A0,由于A0并不存在,故会显示错误信息。

ISERROR函数捕获错误

循环引用警告
 


处理循环引用的⽅法主要有两种, Excel会试图提醒:
 
 ★ ⼀种⽅法是更正不经意的循环引用。 单击提示信息中的“帮助"键,它将帮助追溯到平衡引用问题的起始点。
 ★ 第⼆种⽅法仅仅当你真的希望使用循环引用时可用,即通过以下步骤 , 将Excel设为迭代计算模式 :⽂件>选项>公式>启用迭代计算>通过上述设置, Excel将允许迭代计算。⼀次迭代就是⼀次循环计算 ,可将其想象为像 " 波浪 " ⼀样逐⼀对各表数据进⾏计算 ,计算过程贯穿整个模型。

什么时候希望迭代循环引用
 
一、 利用循环引用可以很简单地进⾏利息支出的计算。
  在预测未来年度的模型中,将会⽣成“平衡”变量来平衡资产负债表 。 假设平衡变量是⼀项债务,会产⽣额外的利息支出,它也会影响平衡变量本身。那么模型必须重新计算(或迭代计算)以对该 增项做出调整,从⽽反过来会⽣成另⼀个增项,且数值越来越小。 上述迭代过程会持续多个循环周期,直⾄收敛于模型设置的上限 。
二、 因此,循环引用可以帮助用户。但使用它的风险是,由于现在模型已经形成了⼀条计算环路,因此如果某个错误信息被不经意间带⼊了计算过程中,那么错误会继续在整个环路中蔓延、循环。即使当错误的根源被移除后,错误信息仍会继续陷⼊循环。在这种情况下,有两种⽅法可以解决:
 
     1. ⼿动改变公式的某个部分,以便"切断"计算环路。确保最初的错误根源已被移除,并且重新计算以便清除错误信息 。
     2. 更简明的⽅法是利用 ISERROR函数来追踪错误。在计算环路的某个位置上,写⼊⼀个公式,使当遇到错误条件时返回0。如在单元格 C51中编写公式“ =IF(ISERROR(C50),0,C50)”。如果在计算环路上存在错误,单元格C51 中的公式会返回0,以⾄后续计算过程从此处读取的数据为0。这样就会切断循环计算路径。