我有一个Excel电子表格来跟踪项目活动。
在A栏中,我有项目名称,并且它会重复几次,因为同一个项目有几个活动。
在B栏中,我有与该项目相关的活动。
在C栏中,我有每项活动的完成百分比。
我想要完成的是:在D列中,返回项目的第一个活动,该活动不是100%。
以下是我想要完成的图片:
我试着这个公式没有运气:
=INDEX($B$2:$B$19,MATCH(TRUE,INDEX($C$2:$C$19<>100%,),0))
然后我发现这个贴在这里:
在这里:
但是我无法让他们做我想做的事。 任何帮助将不胜感激。
由于
答案 0 :(得分:1)
您需要匹配两个条件,项目和百分比:
=INDEX($B$2:$B$19, MATCH(A2&TRUE, $A$1:$A$19&($C$1:$C$19 <> 1), 0))
这需要使用公式框中的Ctrl + Shift + Enter作为数组公式输入。
答案 1 :(得分:1)
对于它的价值,这里有一个比@ AlexisOlson更准确的公式:
=INDEX($B$2:$B$19,MATCH(1,($A$1:$A$19=A2)*($C$1:$C$19<>1),0))
通常,在MATCH
内进行连接并不是一个好主意,因为它可能会导致错误的结果。
例如:
= MATCH("12"&"34",{"1","12"}&{"234","34"},0)
当你真正希望它返回2时,这个公式会返回1。
更改为:
= MATCH(1,({"1","12"}="12")*({"234","34"}="34"),0)
将消除错误选择错误查找值的任何风险。
当然,在这种特殊情况下,它没有任何区别,因为$C$1:$C$19<>1
无法返回除TRUE
或FALSE
以外的任何其他内容,但它只是某种东西要注意。
我唯一一次在&
内使用MATCH
方法是因为我真的希望在单个范围内找到字符串的串联,例如类似的东西:
= MATCH("John"&" "&"Doe",{"John Doe","Bill Miller","Mike Jones"})