加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

VBA学习笔记之Text(十 四)——文本连接

(2013-03-19 08:00:00)
标签:

excel

vba

join函数

split函数

字符串连接

it

分类: VBA
 
     在VBA学习笔记之Text(十三)http://blog.sina.com.cn/s/blog_7f14264a01015vtf.html中,和大家分享了如何将字符串按照一定的规则给拆分开来,在这里和大家分享如何将分离的字符串给组合起来。
 
      少数几个字符串的组合,我们通常使用连接符号,如“ ”或者“&”就可以完成,如下面的一个简单的组合:
 Sub test()
    Dim Str1 As String
    Dim Str2 As String
   
    Str1 = "浙江"
    Str2 = "杭州"
    Str2 = Str1 & Str2
    Debug.Print Str2
End Sub
 
       但是当我们要将较多的字符串进行组合时,尤其当我们需要将数组中的各个元素组合到一起,使用连接符显得就比较麻烦了,下面就介绍连接字符串的一个比较好用的函数Join。
 
       Join函数返回连接某数组中的多个子字符串而组成的字符串,即将数组中的字符串连接起来,其语法为:
Join(sourcearray[,delimiter])
其中参数
  • sourcearray:必须,是包含被连接子字符串的一维数组;
  • delimiter:可选,代表在所返回的字符串中用于分隔子字符串的字符,若忽略则使用空格(" ")来分隔,若为0长字符串(""),则所有项目都连接在一起,中间没有分隔符。
     演示代码:
 
Sub JoinDemo()
   
    Dim myStr As String
    Dim sSplited() As String
    myStr = "This is a test about Split Function"
    '使用Split函数将字符串从空格处拆分为字符串数组sSplited()
    sSplited() = Split(myStr, " ", -1, vbBinaryCompare)
    '使用Join函数将sSplited()中的字符串以空格为分隔符连接成一个字符串
    Debug.Print Join(sSplited, " ")
   
End Sub
 
 当然,上面的程序也可以使用一个循环来完成,如下:
 
Sub JoinLikeDemo()
   
    Dim i As Integer
    Dim joinStr As String
    Dim myStr As String
    Dim sSplited() As String
    myStr = "This is a test about Split Function"
    joinStr = ""
   
    sSplited() = Split(myStr, " ", -1, vbBinaryCompare)
   
    For i = 0 To UBound(sSplited)
        joinStr = joinStr & " " & sSplited(i)
    Next
   
    Debug.Print joinStr
End Sub

 

当然,这样就显得代码臃肿很多,同时使用内部函数将比使用循环效率更高。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有