2016-06-10 169 views
0

我为我的交易业务创建了大量自动计算。但是,我需要能够反映没有任何价值的空白单元格。电子表格单元格需要保留空白

enter image description here

你会发现,线47完全被填满,计算正确。但是,第48行没有日期或入场价格。我需要将列P,列Q和列S反映为空白。每列的计算如下,结果可以在图片中看到。

计算器下P48是:

=IF($D48="","",IF(OR(AND($D48="buy",$N48>=$C48),AND($D48="sell",$N48<=$C48)),"Win","Loss")) 

Q48下Calc是:

=IF(AND($P48="Win",$D48="buy"),ABS($N48-$C48)*10000,IF(AND($P48="Win",$D48="sell"),($C48-$N48)*10000,IF(AND($P48="Loss",$D48="buy"),($N48-$C48)*10000,IF(AND($P48="Loss",$D48="sell"),($C48-$N48)*10000)))) 

为S48最后计算的是:

=IF($P48="Loss",$Q48*1,"") 

这是一个非常复杂和详细的电子表格。有人可以帮助我处理这些计算以使它们正常工作吗?

+0

首先,第47和48行不显示在您的屏幕截图中。虽然我猜你的解释仍然分别适用于38行和39行,对吗? – Andrew

+0

如果你使用'= IF($ D48 =“0”,'而不是吗?)可以使用D列,否则你可以使用'= IF($ B48 =“”,'。当然,然后把它添加到最后4列 – Andrew

+0

我也检查了D48,它也应该是空白的,这可能会触发其他的,但是我不能让它变成空白而不是0。现在calc是什么样子...... = IFERROR('4hrdata'!$ C43,“”) –

回答

0

答案来自于上述建议的试验/错误。我还使用File/Option/Advanced删除工作表上的所有零条目。另外在Q48中还有一个空白的条件。

+0

如果所有的公式以'= IF($ D48 =“”,“,',(在* else *部分留下正常的公式)开始,那就足够了。例如,最后一个公式:'= IF ($ D48 = “”, “”,IF($ P48 = “损失”,$ Q48 * 1, “”))'。 – Andrew

1

使用ISBLANK功能。 列D不为空,因为它在没有日期或入场价格的行上包含零(如第48行),因此我将使用日期列,入门价格列或两者。 在细胞P48:

=IF(ISBLANK(B48),"",IF(OR(AND($D48="buy",$N48>=$C48),AND($D48="sell",$N48<=$C48)),"Win","Loss")) 

或者 - 如果日期或进入价格没有填写,您的公式将在细胞P48返回空白单元格与此:

=IF(OR(ISBLANK(B48),ISBLANK(C48)),"",IF(OR(AND($D48="buy",$N48>=$C48),AND($D48="sell",$N48<=$C48)),"Win","Loss")) 

添加ISBLANK到Q & S公式也是如此。 S48:

=IF(ISBLANK(B48),"",IF($P48="Loss",$Q48*1,""))