指数&匹配以返回文本值

时间:2018-01-17 07:20:37

标签: excel indexing match formula

我的公式出错了。

如何让它在列的列引用中显示匹配的文本输出?

F11显示A1查找输出由上面的行中的公式生成,而不是特殊字符“ - ”。

G11显示B1查找输出由上面的行中的公式生成,而不是特殊字符“ - ”。

H11显示B6通过上面的行中的公式查找输出产生的非特殊字符“ - ”。

如下图所示,下面的公式是我当前输入到参考列,产生错误。

 =INDEX(F5:F10,MATCH(A5:A10,A5:A10,0))

enter image description here

1 个答案:

答案 0 :(得分:1)

根据编辑,您可以使用类似

的公式

=LOOKUP(2,1/(F5:F10=$A$5:$A$10),F5:F10)

复制它!

如果只有一个条目而其他条目只有破折号( - ),那么也可以使用以下条目。

=SUBSTITUTE(CONCATENATE(F5,F6,F7,F8,F9,F10),"-","")

LOOKUP说明:

我们只是将公式列中的值(本例中为F)与A列中的值进行比较 (F5:F10=$A$5:$A$10)生成TRUE;FALSE;FALSE;FALSE;FALSE

等结果

当这些结果用于除1时,它们会被强制转换为数字(TRUE = 1,FALSE = 0),因此结果数组看起来像1,#DIV/0!;#DIV/0!;#DIV/0!;#DIV/0!

我们正在查看TRUE结果,它总是等于1.所以我们使用大于1的数字,即2,因为LOOKUP使用二进制搜索。可以使用任何大数字。

然后外部LOOKUP只返回传递数组中匹配的项目。

您可以使用功能区Formulas >> Formula Auditing >> Evaulate Formula中的“公式评估”选项精确地查看此内容。