更新:文件
根据请求,我将包含文件的链接:here。 文件不再可用
我已将原始数据转换为类似游戏的上下文,其中工作表跟踪已完成活动的点数,并且在达到各种点数量时,用户上升等级。查看问题的一种简单方法是在单元格旁边的F15中输入1(然后是2和3)500.当您这样做时,请注意Q5:Q6中的值如何从0变为1,但排名为作为计算此范围的SUM函数的C2不会像它应该增加到3。因此,基于它的L12和L14中的值也不会更新。现在,如果重新计算,等级会上升,L单元格会更新。现在,基于L单元格的单元格E3不能反映正确的值,您必须再次重新计算工作表以进行更新。
希望所有这些都有意义 - 如果您需要任何澄清,请告诉我!
原始问题
我输入数据后,我的一些公式没有立即更新。只是为了在某人建议之前解决这个问题,我确实将工作簿的计算设置为自动,并且我不打开任何其他工作簿,其计算方法设置为手动。所以这不是问题。
我会详细说明公式,但我不认为它与此有任何关系。该公式是一个简单的SUM函数,它将一个范围加在一起。范围正确更新 - 只要我输入数据,范围内的数字就会相应更改。 SUM函数同样应该自动更新,但我必须在另一个单元格中输入数据或在空单元格中按删除(基本上,再次重新计算工作表)以使SUM函数反映范围内的更改。
我唯一可以想到的是,这是因为我启用了迭代计算(在文件>选项>公式选项卡中),以便在某个条件为真时允许单元格保留其先前的值,否则更新他们的价值。我的设置为1表示最大迭代次数,默认值为0.001表示最大变化。但是,我之前使用过它而没有简单SUM函数的问题。我的表格中还有其他一些简单的功能,可以正确更新,所以我有点困惑......
如果有更多信息有帮助,请告诉我。谢谢你的任何建议!
答案 0 :(得分:0)
<强>更新强>: 对不起,我没有发现这是一个公式,而不是功能。我的错。 我会留下答案,万一有人有同样的问题,但有一个功能。遗憾!
尝试在代码中添加:
Application.Volatile
每次在出现此功能的工作表上更改单元格时,这将强制重新计算该功能。
参考:http://msdn.microsoft.com/en-us/library/aa213653(v=office.11).aspx
答案 1 :(得分:0)
您有循环引用:范围S4:AL103
中的单元格公式都指自己(在cetain条件下)。这将导致excel停止计算,因为它无法解决冲突。
你需要重新设计你的公式
答案 2 :(得分:0)
最初添加到我的帖子中;将其移至实际答案,以便可以接受
所以我找到了解决方案。通过迭代读取更多内容,我发现在迭代模式下,Excel按一定顺序逐个处理单元格(按字母顺序排列,我认为?)。因此,如果单元格A依赖于单元格B,但单元格B在此过程中稍后更改值,则单元格A将保留基于单元格B的旧值而不是新值的值,直到另一次重新计算被提示...或者,直到另一次迭代开始。因此,将最大迭代次数设置为大于1的数字可以解决问题。由于我在示例表中有两个单元没有更新我给你们,它需要设置为大约3.在我的实际工作表中,我必须将其设置为5。
感谢您的想法!希望这有助于其他一些困惑的灵魂!