我是这个论坛的新手。我有一个电子表格,根据未来事件预测银行余额。我想知道未来的最低余额,以确保我不会超支。
我可以使用MIN
在整个日期范围内找到帐户中的最小值,但这包括过去的日期。我想根据MIN
函数改变TODAY
参数的范围。
我可以使用=ADDRESS(MATCH(DATEVALUE(TEXT(TODAY(),"dd mmm yy")),C:C,0),COLUMN(E2),4)
返回我今天要使用的单元格引用,其中列C
包含日期,列E
表示银行余额。但是,我无法在MIN
公式中使用单元格的值。
因此,目前,MIN(E10-E121)
适用于过去和未来的级别,但如果今天日期的ADDRESS
例程在单元格E90
中返回A1
,则无法引用{在A1
函数中{1}}获取范围MIN
。
我已尝试E90:E121
,但这会在INDIRECT
处提供单元格的值。
答案 0 :(得分:2)
假设您的数据位于第2行到第100行,这将为您提供E列中任何位置的最小数量,其中C列中的日期为今天或更晚。它是array formula,因此必须使用 Ctrl - Shift - 输入输入:
=MIN(IF(C2:C100>=TODAY(),E2:E100))
编辑:
在回复您关于如何使用范围中的一个单元格进行操作的评论时,这会使用Match
来查找C列中小于或等于Today()
的最后一个单元格然后使用它作为列{E中范围规范的前半部分的Index
。它要求列按日期排序,升序,如果今天不在列C中,它将从列中的最高行开始C与今天之前的日期。您可以摆弄Match
- 1,0,或-1中的最后一个参数,但如果C总是包含今天的日期,则可以使用:
=MIN(INDEX(E2:E100,MATCH(TODAY(),C2:C100,1)):E100)
答案 1 :(得分:0)
另一个不涉及数组公式的解决方案(但有一些更复杂的公式):
=SUMPRODUCT(MIN((C2:C100<TODAY())*(1+MAX(E2:E100))+(E2:E100)*(C2:C100>=TODAY())))