使用 excel vlookups 进行精确大小写匹配

Gra*_*Roy 1 excel excel-formula

我有一个包含“唯一”ID 的电子表格。问题是它们只区分大小写,这意味着我有:a06D000000QO5uW & a06D000000QO5uw。

我想对这些 ID 执行 vlookup 并拉回相关值。可以使用我发现的这篇文章进行区分大小写的匹配:

http://support.microsoft.com/kb/214264

我发现的问题是,因为 vlookup 嵌套在 Exact 函数中,它返回它找到的第一个匹配项,这可能不是我所追求的。如果我使用文章中的数据样本,它看起来像:

Name    Age     Joe
Mary    32  
joe     48  
Bob     53  
Sue     27  
Joe     30  
Run Code Online (Sandbox Code Playgroud)

并且查找看起来像:

=IF(EXACT(C1,VLOOKUP(C1,A1:B6,1,FALSE))=TRUE,VLOOKUP(C1,A1:B6,2,FALSE),"No exact match")
Run Code Online (Sandbox Code Playgroud)

问题似乎是测试“Joe”的 vlookup 首先遇到“joe”,因为它不区分大小写,将其作为匹配项返回 - 这意味着它永远不会到达“Joe”。确切的函​​数随后失败,因为它试图针对“joe”测试“Joe”。

有没有办法解决?我真的很想避免走 VBA 路线,因为我们混合了 Mac 和 Window 用户,所以我想将其保留为公式。

bre*_*tdj 5

您的问题(使用这个确切的示例)在此处涵盖

  • 数组公式(按Ctrl ShiftEnter )将针对 joe 返回 30(如果未找到匹配项,则为 NA)。=INDEX(B1:B6,MATCH(1,--EXACT(A1:A6,C1),0))
  • 同一篇文章中提到的一个更直接的公式是 =LOOKUP(1,1/EXACT(A1:A6,C1),B1:B6)

在此处输入图片说明