使用 VLOOKUP 根据值检索单独工作表中的数据

使用 VLOOKUP 根据值检索单独工作表中的数据

我有很长的帐户代码,这些代码由破折号分隔,因此它们看起来像 ##### - ### - ## - ######。分隔数字的其中一个破折号是部门代码。在我的工作簿中,我有一个名为“dept_list”的工作表,在该工作表的 E 列中,我有一个导出部门代码的公式,在 F 和 G 列中,我有帐户代码及其说明。

帐户代码列表很长,因此为了节省时间,我创建了一个名为“查找”的工作表,用户可以根据部门代码查找代码。例如,如果用户要查找的帐户代码中包含部门代码“123”,则可以在“查找”工作表的 B2 单元格中输入“123”,然后单击单元格旁边的“搜索”按钮,该按钮会将他们带到一个名为“deptlookup”的单独工作表,其中将列出包含部门代码“123”的所有帐户代码以及帐户说明。

我认为 VLOOKUP 可能可以解决这个问题。我只是不确定如何在语法上设置它,或者我是否必须在 VBA 中执行此操作。我以前从未这样做过,所以如果有人能给我任何关于如何最好地做到这一点的切实建议或建议,我将不胜感激。谢谢!

这只是“dept_list”表的两行。A 列是部门代码列表,B 列是部门描述。E 列是公式“=MID(F cell,9,3)”,它导出嵌入在完整帐户代码中的部门代码,F 列是帐户代码,G 列是帐户描述。在此处输入图片描述

这是工作表“查找”中的搜索行。在单元格 B2 中,我希望用户输入部门代码,如“000”或“001”或“002”等,然后单击“搜索”按钮。

在此处输入图片描述

单击“搜索”按钮后,用户将被带到一个名为“deptlookup”的工作表,我希望在此列出所有完整的帐户代码和包含搜索到的部门代码的帐户描述。描述中有 #N/A 的原因是,我在这些单元格中有一个 VLOOKUP,可以根据 A 列中填充的帐户代码提取描述。

在此处输入图片描述

我曾尝试使用基于查找表搜索参数单元格的 VLOOKUP。我本质上是想说:如果查找表单元格 B2 中的值 = MID(表 acct_codes 的 A 列,9,3),则使用 VLOOKUP 提取所有与该部门代码匹配的帐户代码,否则不返回任何内容。

=IF(lookup!B2=MID(acct_codes!A:A,9,3),VLOOKUP(A2, acct_codes!$A:$A,1,FALSE), " ")

我也尝试过这个但它仍然不起作用:

=IF(lookup!B2=MID(acct_codes!A:A,9,3),VLOOKUP(acct_codes!A:A=MID(acct_codes!A:A,9,3),acct_codes!A:A,1,FALSE), "")

答案1

以下是使用通配符进行 Vlookup 的示例:

=VLOOKUP("*" & D1 & "*",F1:G4,2,FALSE)

在此处输入图片描述

编辑#1:

以下是获取多个返回值的示例。假设我们从以下开始:

在此处输入图片描述

C1我们进入:

=IF(COUNT(SEARCH({"123"},A1))>0,1,"")

以及C2

=IF(COUNT(SEARCH({"123"},A2))>0,1+MAX($C$1:C1),"")

并抄下来。列C标记包含的每一行123

然后在D1进入:

=IFERROR(INDEX(B:B,MATCH(ROW(),C:C,0)),"")

并抄下来:

在此处输入图片描述

相关内容