excel表格如何一个条件匹配多个结果?

例如上图,如果用姓名匹配爱好,怎样可以实现李四的结果有“喝”和“玩”,诸如此类。
原表有超过3000行数据。

1、电脑打开Excel表格

2、打开Excel表格后,按Alt+F11,调出VBA窗口,然后点击插入。

3、点击插入后,选中插入模块。

4、插入模块后,复制代码

Function abc(a As Range, b As Range, c As String)
Dim t As String
'如果a与b的区域大小不同,就显示“错误”
If a.Rows.Count <> b.Rows.Count Then abc = "错误": Exit Function
'在区域a是循环
For i = 1 To a.Rows.Count
'如果在a中找到与c相同的值,就把同一行中的b的内容提取出来,存入变量t中。
If a.Cells(i, 1) = c Then t = t & " " & b.Cells(i, 1)
Next
'将变量的值赋给自定义函数
abc = t
End Function

复制代码粘贴。

5、粘贴代码后,返回表格中输入公式=abc($A$1:$A$9,$B$1:$B$9,A1)。

6、输入公式后,回车就可以匹配多个结果了。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-09-21

1.在原始数据中A列有多个“张三丰”,需要提取每个“张三丰”对应的“工号”。

2.一般情况的VLOOKUP只能返回第一个值,如下:

=VLOOKUP(A8,A1:D5,2,0)

3.在【姓名】列前插入一列,如下图输入公式:

=COUNTIF(B$2:B2,B2)

这个公式返回每个“姓名”从上到下是第几次出现,如第二个“张三丰”标记2。

4.将A2公式改成:

=B2&COUNTIF(B$2:B2,B2)

这样就将B列的“姓名”和出现次数连在一起。

5.在B8输入公式:

=A8&ROW(A1)

将A8值和ROW(A1)返回的1连在一起,下拉ROW(A1)会变成ROW(A2)返回2。

6.将B8的公式修改成如下:

=VLOOKUP(A$8&ROW(A1),A$1:E$5,3,0)

也就是在A1:E5范围内查询“张三丰”和出现次数的文本对应第3列的【工号】。

7.将公式下拉,就将所有“张三丰”对应的信息查询出来了。

本回答被网友采纳
第2个回答  2019-04-10

材料/工具:Excel2010

1、在成绩列前面插入一列,将姓名和性别两列数据合并在一起。

2、在源数据里面按照同样的方法将姓名和性别两列数据合并一起。

3、两个数据都合并好之后,选中成绩列单元格,找到vlookup查找函数。

4、在行数参数内输入对应的数据信息,就可以出现对应的成绩。

5、将数据下拉到最底,整列成绩信息都会出现,做过验证之后可以看到做出来的成绩无问题。

6、做完之后将公式转化为数值,最后将插入的合并列数据删除即可。

本回答被网友采纳
第3个回答  2019-06-08

准备工具/材料:装有windows 10的电脑一台,Microsoft Office 家庭和学生版 2016 excel软件。

excel表格一个条件匹配多个结果的办法如下:

1、在成就栏前插入一栏,合并姓名和性别数据。

2、在源数据中,姓名和性别数据以相同的方式合并。

3、合并两个数据后,选择结果列单元格并找到vlookup查找函数。

4、在行数参数中输入相应的数据信息,相应的结果将会出现。

5、将数据下拉到底部,将显示整列得分信息。经过验证,您可以看到分数没有问题。

6、完成后,将公式转换为数值,最后删除插入的合并列数据。

本回答被网友采纳
第4个回答  2019-06-02

1、首先,打开需要操作的excel表格,在性别后面插入一列,将A2、B2两列数据合并。

2、接着,按同样的方法将源数据里面的姓名和性别两列数据合并。

3、两个数据都合并好后,选中成绩D2列,找到vlookup查找函数。

4、在函数参数内输入对应的信息,就可出现对应的成绩。

5、然后将数据表格下拉,则成绩信息都会出现。

本回答被网友采纳
相似回答