我不能为此目的使用数据透视表,因为这个计算是在一个巨大的嵌套if公式中进行的。
A栏有单位
B列的开始日期为
C栏的结束日期为
D列:F有数据。
E列......试图弥合这些数据,因此我可以比较7月到8月。
编辑问题:我不妨把它扔出去,因为每个人都是从零开始做的。
好的,在第一张图片中,有两个日期,一个开始测量和一个结束测量。我采取最终 - 开始。很容易。
但是有例外。有时D:F
http://i.imgur.com/z9KhdmC.png
但我的数据并不一致。 D:F可能充满了零。有时7月份的数据是8月,但据桥梁说,情况并非如此。我认为7月份的数据不会超过8月1日。
为了解释这一点,这张新照片就在这里。
http://i.imgur.com/QcR55s8.png
这是我目前的公式,我想弄清楚。
= IF(AND(B2> = DATE(2013,7,1),B2&LT = DATE(2013,8,1)),IF(G2<大于0,IF(-need.to.prevent。 duplicates.here-,F2-D2,0),V2),IF(AND(C2> = DATE(2013,7,1),C2&LT = DATE(2013,7,31)),IF(B2 = DATE( 2013,8,1),F2-E2,F2-D2),0))
答案 0 :(得分:1)
使用提供的图片,在单元格I32中尝试此公式(因为那是1月份开始的地方)并上下复制:
=IF(TEXT($B32,"mmmm")=I$31,IF(TEXT($C32,"mmmm")=I$31,$G32,$E32-$D32),IF(TEXT($C32,"mmmm")=I$31,$F32-$E32,0))
替代(缩短)版本写同样的事情:
=(TEXT($B32,"mmmm")=I$31)*($E32-$D32)+(TEXT($C32,"mmmm")=I$31)*($F32-$E32)
[编辑]:我正在提供示例工作簿here
答案 1 :(得分:0)
如果月份不是8月,你还没有提到你想要的东西,所以在下面的公式中(在Row1中并向下复制以适应),这种情况导致FALSE:
=IF(AND(MONTH(B1)=8,MONTH(C1)=8),IF(ISBLANK(E1),"OTHER",E1))
然而,当两者都是八月时,这应该符合您的要求,但“OTHER”是您替代配方的占位符。
编辑:
我认为以上符合“我想要一个公式,如果B和C有8月。如果是,请在E中查找数据。如果数据不在E中,请执行另一个公式。”但是如果你想在'unit`的所有实例中测试E数据的存在那么这个:
=IF(AND(MONTH(B6)=8,MONTH(C6)=8),IF(COUNTIFS(A:A,A6,E:E,"<>"&""),"OTHER",E6))
答案 2 :(得分:0)
我想我找到了解决方案。我的最终结果就是这个。
= IF(AND(B2&GT; = DATE(2013,7,1),B2&LT = DATE(2013,8,1)),IF(G2&LT;大于0,IF(E2&LT;&gt; “中”, E2-D2,IF(P2 = G2,0,F2-D2)),V2),IF(AND(C2&GT; = DATE(2013,7,1),C2&LT = DATE(2013,7,31)), IF(N2&GT; G2,V2-N2,G2-N2),0))
我所做的是比较8月和G2(总数)以消除重复。如果八月完全相似,那么公式将把七月变为零。
我在六月数据方面也做了一些工作。