圆形Excel公式

我需要做一个Excel电子表格,接受用户input在表单上的两列之一。 无论哪个列没有手动input,都需要计算其值。 为了显示:

在这里输入图像说明

在这幅图中,三列之间有关系。 总价格=(价格/单位)*(单位数量)。

我的电子表格的用户将做两件事之一:

  1. 他们将手动input“价格/单位”的值。 如果发生这种情况,需要计算“总价”(价格/单位*单位计数)。
  2. 他们将手动input“总价”的值。 如果发生这种情况,需要计算“价格/单位”(总价/单位数)。

有没有一个公式可以实现呢? 也许一个“If-C1-a-a-formula”function? 我认为这是不可能的。

编辑:macros是一个不行我。 对不起提早不提。 我将通过Java来开发Apache POI,这不允许创buildmacros 。

如果macros不是一个选项,那么你将需要一个稍微不同的设置,如下所示:

tigeravatar非循环方法

在左侧,用户将填写什么。他们将inputUnit CountPrice ,然后在C列中,他们将select一个Price Type ,这是一个validation下拉列表,指向$F$1:$G$1 (价格/单位,总价)。 一旦他们select了价格types,表格将自动使用公式填充。

在单元格E2中复制(单元计数):

 =IF(A2="","",A2) 

在单元格F2中复制下来(价格/单位):

 =IF(COUNTBLANK(A2:C2)>0,"",IF(C2=F$1,B2,B2/A2)) 

在单元格G2中复制下来(总价格):

 =IF(COUNTBLANK(A2:C2)>0,"",IF(C2=G$1,B2,B2*A2)) 

然后你可以格式化列F和G到所需的(在这种情况下,你可能会格式化为货币或会计)。

我还应该提到,结果表可以在不同的工作表上,您只需要为您的数据validation下拉列表使用命名的范围(如果只有两个选项,则可以对其进行硬编码)。