Excel交流网
  • 设为首页|收藏本站|手机版
  • Excel-教程-技巧-培训视频

  • 网站首页
  • Excel教程
  • 关于我们
  • 新闻动态
  • Excel资源
  • 招贤纳士

Excel教程

Excel操作
Excel函数
Excel图表
Excel VBA
Excel 行业应用

联系方式

Excel中国 联系方式
电  话:400-855-3990
邮  编:528400
Email:support@zstm.com
网  址:www.excel-cn.com

当前位置:网站首页 > Excel教程 > Excel VBA
Excel VBA

Excel按条件合并多个单元格的内容到指定单元格内

在excel表格中,我们有时需要合并多个单元格的内容到指定的单元格中。

如图,比方说需要把每个人购买的水果合并到一个单元格内。每个水果用“,”隔开。

blob.png

Excel中有自带函数CONCATENATE,它可以将多个文本字符串合并成一个文本字符串,但它不能指定条件合并某些单元格的内容到一个单元格,这时CONCATENATE函数无法实现。


自定义函数:

Function CONCATENATEIF(rng1 As Range, rng2 As Range, criteria As String, separator As String) As String
    Dim arr()
    Dim rCell As Range
    Dim i As Integer, j As Integer
    On Error Resume Next
    j = WorksheetFunction.CountIf(rng2, criteria)
    If j > 0 Then
        ReDim arr(0 To j - 1)
        For Each rCell In rng2
            If WorksheetFunction.CountIf(rCell, criteria) Then
                arr(i) = rng1.Item(1).Offset(rCell.Row - rng2.Row, rCell.Column - rng2.Column).Value
                i = i + 1
            End If
        Next
        For i = 0 To j - 1
            CONCATENATEIF = CONCATENATEIF & arr(i) & IIf(i <> j - 1, separator, "")
        Next
    End If
End Function


此自定义函数CONCATENATEIF有四个参数,分别是①需要连接单元格内容的区域(通常为单行或单列)、②条件区域,③条件,④分隔符。

注意:函数可以使用“*“,”?”等通配符.


在单元格中录入函数,填写相关的参数即可:=CONCATENATEIF(C2:C14,B2:B14,F2,",")

效果如下图:

blob.png

点击次数:  更新时间:2017-10-16 16:25:30  【打印此页】  【关闭】
上一条:excel vba以文本的形式批量显示超链接中的地址  下一条:excel vba选取所有包含超链接的单元格
本站动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图|网站管理

中山市天鸣科技发展有限公司 版权所有 1999-2020 粤ICP备10043721号

广东省中山市西苑广场富贵阁 528400

QQ:4008553990 电话:0760-88315075

Excel交流网主要交流Excel教程、Excel技巧、Excel培训、Excel函数公式、Excel图表以及Excel VBA,为网友提供一个最全的Excel交流网站

Excel教程|Excel技巧|Excel培训|Excel函数公式|Excel图表|VBA

Powered by MetInfo 5.3.12 ©2008-2021  www.metinfo.cn