1

我有一行包含日期:

05/10/15    06/10/15    07/10/15    08/10/15    09/10/15    10/10/15    11/10/15
D3:J3

我有一个D5具有以下值的单元格 ( ):

=NOW()
//Returns "07/10/15"
//The cell is formatted to exclude time.

我有这个功能(E5):

=ADDRESS(3,MATCH(D5,D3:J3,0),1,4)

目的是将当前日期与给定选择的日期匹配并返回单元格地址。该功能不起作用,我不确定我错过了什么。

我添加了以下函数来检查值:

=IF(F3=D5,TRUE,FALSE)

这会返回FALSE,这可能是 main 函数崩溃的原因之一。

NOW() != "07/10/15"

我怎样才能解决这个问题?

TODAY() == "07/10/15"这解决了问题的一半

该函数现在正在查找匹配项,但返回C3值与匹配日期F3的值是我想要返回的值。

4

2 回答 2

1
=ADDRESS(3,MATCH(D5,D3:J3,0),1,4)

首先是行号,由于您的数据在第 3 行,我输入了 3,但任何其他返回此值的公式也很好(例如 Row)

第二,你输入了太多的值matchMATCH(D5,D3:J3,0)就行了。

第三个但不是决定性的,我的 now() 用于时间戳,而 today() 仅用于日期。

于 2015-10-07T15:41:53.880 回答
1

使用 MATCH() 时,它将为您提供相对于搜索数组开头的列位置。我只是将您的搜索数组扩展为从第一列开始,因此返回的相对列将准确地与 ADDRESS() 函数一起使用。所以,像这样:

=地址(3,匹配(D5,A3:J3),1)

更新:好的,所以以前省略了所需的参数。我们需要 MATCH() 上的第三个参数来告诉它我们希望它完全匹配。此外,如果我们在 ADDRESS() 中添加“4”作为附加参数,那么它会更漂亮。所以,像这样:

=ADDRESS(3, MATCH(D5,A3:J3,0),4)
于 2015-10-07T15:57:07.493 回答