VLOOKUP |匹配/索引,还是VBA?请帮助!在列中搜索字符串,从该行返回值

时间:2018-06-19 17:17:51

标签: vba excel-vba excel-formula vlookup excel

我会尝试改写我仍然没有运气的这个不列颠哥伦比亚省:

我有一个带有2个不同选项卡的工作簿:

  1. REPORT_TAB和
  2. RAWDATA_TAB

我的RAWDATA_TAB具有标准的数据库查找数据,如下所示:

   A          |      B      |      C      |    D
ACCOUNT_KEY   |    AMOUNT   |     DATE    |   FEES
 MGX4421           100         6/15/2018       26
 MGLR200           75          6/15/2018        5
 CXDSTR            150         6/15/2018       50
 18000             45          6/15/2018       10

在我的REPORT_TAB上,我只想在上面的A列中搜索特定帐户,然后返回B列中的值。例如:

对于一个单元格,我想搜索“ CXDSTR”并返回150 对于另一个单元格,我要专门搜索acct“ MGX4421”并返回100

我以为我可以通过以下方式实现这一目标:

= VLOOKUP(“ MGX4421”,RAWDATA_TAB!A1:D10,2,0)返回100,但它只显示#N / A,其中单元格中有绿色三角形

有帮助吗?使用VLOOKUP可以实现,还是可以使用VBA轻松实现?或MATCH / INDEX

预先感谢您的帮助!

1 个答案:

答案 0 :(得分:0)

我能够找到解决方案。我无法让VLOOKUP完全执行我想做的事情,所以我使用了INDEX-MATCH组合。语法如下:

= INDEX(RAWDATA_TAB!A1:T1000,MATCH(“ MGX4421”,RAWDATA_TAB!C:C,0),2)

这基本上转到RAWDATA_TAB,搜索包含唯一帐号“ MGX4421”的行,并返回“ 2”列,在上例中为[AMOUNT]。

我希望这对任何人都有帮助