Excel 索引/匹配和VLOOKUP协助

Excel 索引/匹配和VLOOKUP协助,excel,Excel,我有一张桌子,看起来如下: 我想做的是: 返回当天具有橙色块的人员的姓名 我能做的是: =匹配(EDATE(NOW(),0),B9:AQ9,0) 因为今天是第16列,所以返回第18列 所以,我想搜索第18列中的任何橙色块。橙色块是橙色的,因为其中包含文本x 只是,我不知道如何只搜索该列 一旦获得该列的行号,我就需要能够返回对第一列A中的列和行的INDEX()查找,以返回此人的姓名 Name列是A列,该列表中的最后一列是AQ 行B9:AQ9是天数所在的位置;这些实际上是日期,只是格式化为只返回d

我有一张桌子,看起来如下:

我想做的是: 返回当天具有橙色块的人员的姓名

我能做的是:
=匹配(EDATE(NOW(),0),B9:AQ9,0)

因为今天是第16列,所以返回第18列

所以,我想搜索第18列中的任何橙色块。橙色块是橙色的,因为其中包含文本
x

只是,我不知道如何只搜索该列

一旦获得该列的行号,我就需要能够返回对第一列
A
中的列和行的
INDEX()
查找,以返回此人的姓名

Name列是A列,该列表中的最后一列是AQ

B9:AQ9
是天数所在的位置;这些实际上是日期,只是格式化为只返回
day
部分

因此,我知道如何找到有问题的列,这就是上面的代码。我只是不知道如何引用该列并匹配该列中的任何“x”以返回该行


在这种情况下,对于2019年1月16日(黄色突出显示的列),它将返回
Krystle
,因为查找将返回第18列第6行我假设您的第18列是第T列,如下所示:

根据您所说的,这将在列T中查找“x”,并从相同位置的列A返回名称:

=INDEX(A2:A5,match("x",T2:T5,0))
例如,使用不同的列:

根据您提供的
MATCH
公式,您可以使用以下公式获得与该日期对应的列(作为数组):

=INDEX($B$10:$AQ$13, , MATCH(EDATE(NOW(), 0), $B$9:$AQ$9, 0))
然后,您可以根据该数组中的值匹配一个名称:

=INDEX($A$10:$A$13, MATCH("x", INDEX($B$10:$AQ$13, , MATCH(EDATE(NOW(), 0), $B$9:$AQ$9, 0)), 0))

因此,我更改了图像,这样您也可以看到行和列的编号。首先应该包括这一点。这里的主要问题是,我不知道它会是什么列,因为每天它都会是不同的列,每天都会是不同的行。不确定我是否解释得足够好,萝拉,这就是它的用法。非常感谢。这确实澄清了那里的情况。我以为我要发疯了,用一种很好的方法解决这个问题。