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

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

Excel教程

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

联系方式

Excel中交流网 联系方式

QQ:18449932 


网  址: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选取所有包含超链接的单元格
本站动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图|网站管理

Excel交流网 版权所有 1999-2020 粤ICP备10043721号

QQ:18449932

免费Excel教程、Excel技巧、Excel培训、Excel函数公式、Excel图表、Excel VBA

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

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