【问题标题】:Excel Lookups or Index Matches with Multiple Criteria具有多个条件的 Excel 查找或索引匹配
【发布时间】:2016-06-06 16:22:08
【问题描述】:

我需要一些简单的 Excel 帮助。我对 Excel 中的公式相当陌生,虽然我知道我的要求很简单,但我自己无法得到我想要的答案。所以在我的 Excel 工作簿中,我们的数据有以下几类:Acct。号码、地区、联系人(等)和帐户号码数据根据其所在的区域分为单独的行。所以帐户。 121 号分为 3 条线(北、南、西),每个地区都有不同的数据。我要做的是在另一张纸上为每个帐号创建一行。对于所有编号的数据,我已经能够使用VLOOKUP 执行此操作,但我遇到了非数字数据的问题。

所以,例如。我试图找到“北方”地区的联系人,并将其放入我的新工作表的单元格中。我在每一行都列出了帐号,但区域被列为列名

这就是我们给出的来源中的数据在 3 列中的列出方式:

   Contact....   Acct No....   Region.......
    Joe...........121.............North
    Marcy.........121.............East
    Jane..........122.............South
    Bob...........122.............West
    Bill..........122.............North

这是我创建的单独工作表中的设置:
Acct.No............北收入............北联系......南收入....南联系......
121.......................803......................(需要这个值)。 ....
122....................... ..122.................................(需要这个值)。 ....98.......................(需要这个值)


我已经通过VLOOKUP 获得了数字收入值,引用了Acct。否并指定 & North(或其他地区),但是当我尝试使用相同的方法来获取联系人姓名时,我得到一个 #N/A。我已经尝试过我在网上找到的索引和匹配组合,但最终我得到了#Value 错误。

那么有没有办法从数据表中获取联系人姓名,当我想通过工作表单元格中的Acct No.查找时,然后我自己指定区域,因为我没有要在我的查找或匹配中引用的特定“北”单元格?

感谢您的所有帮助,我知道这有一个简单的答案,但我还没有找到解决方法。

【问题讨论】:

  • 在运行到非数值数据之前有效的公式是什么?
  • 所以这是我得到北方收入数值的 VBA 代码:"=VLOOKUP(RC[-13]&""NORTH"",Detail!C[-11]:C [8],20,FALSE)" 但是如果我切换列以提供联系人,我会得到 #N/A 结果
  • @newkid59 - 所以您正尝试使用 Vlookup() 根据帐号查找返回 A 列中的值?您在标题中提到了索引/匹配,您知道如何使用索引/匹配吗?如果是这样,您可以根据两个以上的值轻松查找,请参阅this page 以帮助您入门。这有帮助吗,还是我误解了这个问题?
  • 你说得对,我正在尝试根据帐户返回 A 列。 B 列中的数字,但也对应于 C 列中的特定区域。所以我从页面中进行了索引和匹配,但我返回了一个 #Value!错误。所以这是我现在用于索引和匹配的公式(这只是在工作表中,还没有做 VBA): =INDEX(Detail!A:A,MATCH(A8&"North",Detail! B:B&Detail!C:C,0)) 因为它是非数字的,所以我应该做一些不同的事情吗?

标签: excel excel-formula match excel-2007 lookup


【解决方案1】:

样本数据,我有以下

Column A    Column B    Column C    Column G    Column H    Column I

Contact     Acct No.    Region      Acct No.    North Rev   N. Contact
----------------------------------------------------------------------    
Joe         121         North       121         803         *Formula*

将下面的公式放在第一列(在我的情况下)

=IFERROR(INDEX(A:A,MATCH(G2 & "NORTH",B:B & UPPER(C:C),0)),"")

确保以 Ctrl + Shift + Enter 结束(这是数组公式)

复制粘贴

注意:我使用 UPPER 来检查任何北方词(North、NoRtH、NORTH....等)


另外,如果你有联系人的电话号码...假设 D 列

然后你可以将公式更改为

=IFERROR(INDEX(A:A & ": " & D:D,MATCH(G2 & "NORTH",B:B & UPPER(C:C),0)),"")

【讨论】:

    猜你喜欢
    • 2017-10-22
    • 2018-06-08
    • 1970-01-01
    • 2019-10-22
    • 2018-11-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-15
    • 1970-01-01
    相关资源
    最近更新 更多