Excel实例教学
当前位置:Excel实例教学 > VBA大百科 > 正文

【视频教程】Excel VBA高级自定义字符串连接函数 仿Office365中Textjoin函数

定制咨询请加微信【EXCEL880A】 提问加QQ群341401932 微信公众号【EXCEL880】

Excel的工作表函数做字符连接极不方便 就是vbajoin局限性也很大,这里我们自定义一个字符连接通用函数,可接受不同类型参数,单元格区域,数组以及单个参数可随意混合组合传入输出结果可跳过空值,可指定分隔符,在需要大量字符串连接的时候,可以方便的调用。 注意工作表中可以结合数组公式使用,可以有条件的返回需要的字符串

 代码如下:

函数可接受数组参数,以及多种参数的组合,可实现上图多种高级字符串连接功能,完整视频讲解请看我的培训课程

Excel VBA常用代码175个实例解析 全程手写代码教学 Excel880出品

http://excel880.com/dwz/3

Function textjoin(spstr, ParamArray params())
    Dim s As String
    Dim e, r
    For Each e In params '主要学习如何使用参数数组,让函数具备接受不定个数和类型的参数
       ' Debug.Print TypeName(e)
        Select Case Right(TypeName(e), 2) '用Typename得到参数类型,根据不同类型做出不同的处理
            Case "ge", "()"
                For Each r In e 'range和arrary() 判断出是单元格区域或者数组类型 则直接遍历
                   If r <> "" Then s = s & spstr & r
                Next
            Case Else '其他类型直接用字符串连接
                If e <> "" Then s = s & spstr & e
        End Select
    Next
    textjoin = Mid(s, Len(spstr) + 1)
End Function
Private Sub Test()
    Dim i&, j&, k&, brr
    Dim arr(2 To 4) As String
    arr(2) = "a"
    arr(3) = "b"
    Debug.Print textjoin(" ", arr, [C6:C7], "abc")
End Sub

 

赞 (0)
分享到:更多 ()

评论 0

评论前必须登录!

登陆 注册
excel视频教学,excel咨询服务,excel案例下载,excel教学
excel视频教学 excel咨询服务 excel案例下载 excel教学