excel单元格一个条件匹配多个结果VBA

应用背景

如图,一批如表1的数据,一个单元格对应多个值,需要去重单元格并合并其值在同一个单元格中展示(如表2),因此用VBA写个Function实现,免掉手敲的烦恼。
在这里插入图片描述
VBA实现程序:

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

此时不必急着保存运行,直接切换到需要处理的表中,在单元格中输入公式运行即可:
在这里插入图片描述

  • 注:不管量多大都不要选择整列作为数据识别的范围,否则EXCEL会卡死。
  • 5
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值