2017-10-06 57 views
0

我想知道Excel 2010中的某个单元格中的字符串是否包含以下任意一项,然后返回'1'。在单元格字符串中查找问号

  • ?dementia

  • ? dementia

  • dementia?

  • dementia ?

我已经尝试了一些公式,但他们似乎并没有能够在组合时超过通配符和字符串的使用。

会有人有任何指针或建议?

Here is a combination of the suggested answers, and my own work around:

+0

如果您有字符串“word?word”,该怎么办?你想返回1吗? – BruceWayne

回答

0

这是你需要的公式轨迹:

=IF(IFERROR(FIND(A2,$C$3),0)>0,1,0)

其中A2是您试图串去检查。

+0

可能是我可以使用的最好的一个,非常感谢。我必须调整它来查找两个“痴呆”值,如请求者所说的“痴呆症和痴呆症”?最有可能脱离其他人(其临床术语/描述)。我会尝试发布图像以显示它正在工作.... – Phil

0

您将要使用FIND功能(Documentation)。

请确保您的搜索字词用引号引起来。

如果仍然遇到通配符问题,可以试试CHAR函数(Documentation)。它将以字符串的形式返回字符。在你的情况下,要获得?,你可以使用CHAR(63)。我用this chart保持的CHAR码(只使用数量而忽略了“ALT”)

0

假设你希望包括word ? word并返回1,你可以使用这样的事情:

=IF(OR(LEFT(A1,1)="?",RIGHT(A1,1)="?"),1,"") 

enter image description here

+0

有用的公式,但我确实需要在字符串中找到“痴呆”字样,它可能位于单元格字符串的中间或末尾。 – Phil

0

修订:

如果我的理解问题正确,您正试图在一个短的字符串列表中搜索长字符串。

可以使用其计算公式为:

=ISTEXT(LOOKUP(99^99,SEARCH(SUBSTITUTE($A$2:$A$5,"?","|"),SUBSTITUTE(C2,"?","|")),$A$2:$A$5))*1 

与我之前公式的问题是由于?马克因为它被视为一个通配符。在这里我用|代替它(你可以改变它为一个你永远不会使用但避免?*)的字符。这现在应该适合你。

+0

感谢您的公式,它似乎查找与“痴呆症”相匹配的任何细胞并返回1.无论问号在哪里,或者之前或之后有多少个空间。即'痴呆?'也会返回1。具体来说,我需要在你的例子中的A2:A5列表中找到这4个选项。 – Phil

+0

@菲尔,我修改了我的答案,以照顾'?'标记问题。再看看。 – ian0411

相关问题