![让 3 个单元格相互计算,同时避免循环引用](https://linux22.com/image/1535432/%E8%AE%A9%203%20%E4%B8%AA%E5%8D%95%E5%85%83%E6%A0%BC%E7%9B%B8%E4%BA%92%E8%AE%A1%E7%AE%97%EF%BC%8C%E5%90%8C%E6%97%B6%E9%81%BF%E5%85%8D%E5%BE%AA%E7%8E%AF%E5%BC%95%E7%94%A8.png)
您好,我相信我遇到了 Excel 的局限性(或者至少是我的局限性)......
简单场景:我想可视化数值的数学关系。假设我有三个字段:年/月/日
所有字段开头均为“0(或空)”。如果我输入“2”作为年份,我希望月份更新为 24,天数更新为 730。如果我现在选择输入 36 作为月份,我希望年份更新为 3,天数更新为 1095。这只是一个例子,我需要它来计算不同容器中硬币的体积。
使用 IF 条件,我设法使这种情况至少对一个数据输入成为可能 / 之后,我显然丢失了用我的数据覆盖的字段的公式。我的方法还导致了循环引用。
有没有一个干净的方法来做到这一点?
答案1
不,没有,公式不行。单元格可以保存公式或常量,但不能同时保存两者。如果您在单元格中输入值,则任何公式都将被覆盖。
如果所有三个单元格都包含公式,就无法获取要计算到电路中的实际值。
当然,如果单元格相互引用,那么这就是循环引用的定义。
如果您想避免这种困境,请使用 VBA 监视这三个单元格,在 VBA 中进行计算,然后将结果写入相应的另外两个单元格。
答案2
您无法仅使用三个单元格(不是使用公式)来实现这一点,但可以使用三个输入单元格和三个输出单元格(每种情况下为天数/月数/年数)来实现这一点。然后,每个输出单元格将包含一个公式,该公式使用一个非空输入单元格来计算天数/月数/年数。
但是,您需要检查三个输入单元格中至少有两个是空的。