Excel 根据特定值更改引用的单元格

Excel change referenced cell as a function of a certain value

在Excelsheet中,我想根据某个值更改引用的单元格,

B1=A1 & C1=A1-B1 if D1==1
B1=A1-C1 & C1=A1 if D1==0.

原则上,这可以通过以下方式重新定义单元格来完成,

B1=A1*D1+(A1-C1)*(1-D1) & C1=(A1-B1)*D1+A1*(1-D1),

但这会生成循环引用,因为 Excel 不知道 D1 是 1 还是 0。

是否可以为这种情况定义某个"switching"函数?

提前致谢,

Excel 函数 "IF" 允许您决定必须为给定的单元格分配什么值,无论是否计算。写作:

=IF(expression;value_if_true; value_if_false) 

到一个单元格,允许您表达您的赋值逻辑。

以您的 "dummy" 示例为例,您的 B1 单元格内容应如下所示:

=IF(D1=1;A1;A1-C1)

您的 C1 单元格内容应如下所示:

=IF(D1=1;A1-B1;A1)

如果您将相同的分配样式应用于其他单元格,请记住根据需要锁定行或列(通过在行或列标识符前使用“$”):

=IF($D1=1;$A1-$B1;$A1) 'to lock the column
=IF(D=1;A-B;A) 'to lock the row

希望对您有所帮助。