目前我在excel上创建一个未完成的付款清单,有助于整合逾期超过一年的数字和数字(Cell C44)。
图片的问题在于,12.12.17的发票#55日期为55美元,尚未成为未偿还的一年,但它出现在Cell C44中。
我将dd.mm.yy中的日期列格式化为Text。那么我该如何对其进行编码,以便检查所有日期(B列)并将其汇总到Cell C44中,如果它的日期超过一年?
这是代码示例。
=SUMIF(B24:B29,"<31.12.16",E24:E29)-SUMIF(B24:B29,"<31.12.16",G24:G29)
任何帮助都将不胜感激。
于06/01/2018更新
我尝试将MID公式集成到代码中,如=SUMIF(B24:B29,MID(B24:B29,7,2)<="16",E24:E29)-SUMIF(B24:B29,MID(B24:B29,7,2)<="16",G24:G29)
答案 0 :(得分:1)
由于您的日期总是dd.mm.yy,您可以使用DATE()
函数从部分构建日期:
=DATE("20"&RIGHT(B24:B29,2),MID(B24:B29,4,2),LEFT(B24:B29,2))
- 这个答案中的所有公式都是数组公式; Ctrl + Shift + 输入但仍在公式栏中
这将构建一个日期数组。
使用此功能,您可以对日期值执行逻辑操作:
=IF(DATE("20"&RIGHT(B24:B29,2),MID(B24:B29,4,2),LEFT(B24:B29,2))<DATE(2016,12,31),E24:E29-G24:G29)
这样做我们现在已经在E
中构建了一个值数组,减去G
中的值,所以剩下的就是求和:
=SUM(IF(DATE("20"&RIGHT(B24:B29,2),MID(B24:B29,4,2),LEFT(B24:B29,2))<DATE(2016,12,31),E24:E29-G24:G29))
修改强>
=SUM(IF(IFERROR(DATE("20"&RIGHT(B24:B29,2),MID(B24:B29,4,2),LEFT(B24:B29,2))<DATE(2016,12,31),0),E24:E29-G24:G29,0))
生成0
值以避免错误。