我有一个查询,它搜索一列的名称,并告诉我同一名称出现在另一列的哪一行。这对我来说非常有效,但是我第一次遇到一个问题,如果名称包含符号 ' 它会弄乱 QUERY 语句。是否有解决方法可以避免声明中的 ' 与其他 ' 相混淆?
这是下面的确切查询
=IFNA(ARRAYFORMULA(QUERY({A:A, ROW(A:A)}, "SELECT Col2 where Col1 = '"&B4&"' LIMIT 1", 0)), -1)
一个抛弃它的例子是
A | B. |C
Larry O'Brien| Person B |2
Person B. | Larry O'Brien |#VALUE!
我可以对上述函数进行任何修改,以使其在名称包含“
”时仍然可以工作吗?我想补充一下,我之前确实使用了 VLOOKUP(MATCH()),但是我需要一个额外的语句来实现完整的逻辑。
我的完整声明将是这样的 =IFNA(ARRAYFORMULA(QUERY({A:A, ROW(A:A)}, "选择 Col2,其中 Col1 = '"&B4&"' AND Col3 = '"&D4&"' LIMIT 1", 0)), -1)
您也可以尝试:
=xmatch(B4,A:A)