在编程时,我们常常将变量值进行增减后再赋值给该变量,例如:
i = i + 1
然而,在Excel工作表中,如果你在单元格中输入包含该单元格值自增或自减的公式,就会显示循环引用警告信息 。如下图1所示,在工作表单元格B2中输入公式:
=B2+1
将会显示循环引用警告,并且显示的值为0 。
文章插图
图1
那么,什么是循环引用呢?
当公式直接或间接地引用单元格自身时,就会导致循环引用 。
在这种情形下,可以通过设置“Excel选项”的“公式”中的“启动迭代计算”来解决 。如下图2所示,选中“启动迭代计算”复选框,其默认的最多迭代次数为100 。
文章插图
图2
设置完后,可以看到图1中单元格B2中的值变为100,如下图3所示 。
文章插图
图3
又如,下图4所示,单元格C4和单元格C7存在循环引用 。
文章插图
图4
因此,应按图2“启用迭代计算”来获得如下图5所示的正确结果, 。
文章插图
图5
在很多情形下,循环引用是一种很好的解决方案 。例如,仿真模拟动画 。
下面的例自来自chandoo.org,使用循环引用在工作表中实现动画效果,如下图6和图7所示 。
文章插图
【excel表格循环引用原理及应用】图6
文章插图
图7(注:由于运算速度非常快,在我的工作簿中没有实现这种数字和图形逐渐增加的效果)
这个示例使用了循环引用和条件格式 。在图6所示的工作表中,在单元格B4中的公式为:
=IF(B7=”是”,IF(B4>$B$6,B4,B4+1),0)
并且在单元格B4中应用条件格式,如下图8所示 。
文章插图
图8
其他单元格中的公式和设置类似 。
使用循环引用,应注意下列事项:
必须启用迭代计算,如上图2所示 。
会使工作簿变慢,因为Excel要做大量的计算 。
循环引用计算过程中的值不能在图表中使用,因为Excel图表只是获取单元格中的最终值 。
如果你的工作簿中有大量的数据且存在循环引用错误,则可以使用功能区“公式”选项卡“公式审核”组中“错误检查——循环引用”,来找到循环引用的单元格,如下图9所示 。或者,Excel会使用追踪线标出循环引用的单元格,如上图4中的蓝色箭头线所示 。
文章插图
推荐阅读
- excel函数SERIES公式
- excel表格中Range对象是什么
- excel表格名称的秘密
- 小心!Excel的保护工作表/工作簿密码很容易破解
- 怎么使用excel公式实现自动排序?
- 怎么获取多个excel表格中公司最近的一条记录?
- excel表单怎么实现逐条批量打印?
- 怎么将excel单元格中的数字和文本分开?
- 怎么强制excel用户启用宏?
- excel怎么合并相同用户号的数据并导入到Word文档?