我有两列,A和B,包含值。我想在C列中插入值,其中每个都包含在A和B中。
我想要的结果示例:
A B C
Hello No No
Nothere here here
YesNo ha
由于“此处”包含在“Nothere”中,因此必须添加。与“YesNo”中的“否”相同
据我所知,我可以使用FIND查找字符串是否存在以及VLOOKUP来搜索整个列。但是如何在整个专栏中使用FIND?因为使用VLOOKUP,我必须搜索一个特定的值,它将在列之间进行更改。
我怎样才能做到这一点? (我不需要使用FIND或VLOOKUP,我刚才提到这是我正在进行的研究)。
答案 0 :(得分:2)
嗯,您确定可以使用FIND
,或者至少使用不区分大小写的等效项:SEARCH
(如果您仍想要区分大小写的搜索,请使用FIND
代替SEARCH
})。
=IF(SUMPRODUCT(--ISNUMBER(SEARCH(B1,$A$1:$A$3))),B1,"")
SEARCH
首先返回一个数组:#VALUE!
,1
,4
ISNUMBER
然后返回另一个数组:FALSE
,TRUE
,TRUE
--ISNUMBER
表示转换为1和0,1表示为TRUE,否则为0
,1
,1
。
SUMPRODUCT
将对该数组中的数字求和,在这种情况下为2,对于excel,它被视为TRUE,因此您将获得B1作为最终结果。
您还可以使用MATCH
:
=IF(ISERROR(MATCH("*"&B1&"*", $A$1:$A$3, 0)), "", B1)
可能更简单,或VLOOKUP
如果你想坚持下去:
=IF(ISERROR(VLOOKUP("*"&B1&"*", $A$1:$A$3, 1, 0)), "", B1)
答案 1 :(得分:2)
一个简短的方法....但需要“数组输入”
=IF(COUNT(FIND(B1,A$1:A$3)),B1,"")
使用 CTRL + SHIFT + ENTER确认
正如Jerry所说,FIND
区分大小写 - 如果您不想要区分大小写,则可以使用SEARCH
替换
答案 2 :(得分:1)
使用VLOOKUP
和FIND
这些文字
"*No*" => "*"&B2"*"
"*here*" => "*"&C2"*"
"*ha*" => "*"&D2"*"
明星*
表示替换任何文字