![如何创建一个表,其中所有列的值相对于彼此发生变化?](https://linux22.com/image/1678770/%E5%A6%82%E4%BD%95%E5%88%9B%E5%BB%BA%E4%B8%80%E4%B8%AA%E8%A1%A8%EF%BC%8C%E5%85%B6%E4%B8%AD%E6%89%80%E6%9C%89%E5%88%97%E7%9A%84%E5%80%BC%E7%9B%B8%E5%AF%B9%E4%BA%8E%E5%BD%BC%E6%AD%A4%E5%8F%91%E7%94%9F%E5%8F%98%E5%8C%96%EF%BC%9F.png)
我想在 Excel 中创建一个表格,其中其他列中的所有结果值都会相对于我修改的原始值发生变化。可以将其想象成一个多向转换表,您可以更改任一值以查看它如何影响其余列
例子:
A B C D
1 Item | Price | Quantity | Total Cost
======|=======|==========|===========
2 Bread | $2 | 2 | =PRODUCT(B2;C2)
3 Milk | $3 | 2 | $6
4 Eggs | $2 | 5 | $10
如果我更改面包的数量或价格,那么总成本也会自动更改。使用单元=PRODUCT(B2;C2)
格中的乘积公式可以轻松实现这D2
一点。我试图克服的挑战是,如果我想修改总成本或D2
(通过输入一个值),那么价格必须相对于进行更改=D2/C2
。
我相信这可以通过结合使用“格式化条件”(或“格式化单元格”)和隐藏列中的公式来实现,但我不知道如何在同一个单元格中输入原始类型的值作为公式。
答案1
从公式角度来看这是不可能的,这只能通过使用 VBA 来实现。
电子表格模型的核心概念是单元格包含公式或定义其自身值的常量。公式不能将内容放入另一个单元格(数组溢出是唯一的例外)。