![55f74ca9960aa9b834cf1a07ffcbc110.png](https://i-blog.csdnimg.cn/blog_migrate/5a65b0fb36da3a2aa5f64cd62108e701.jpeg)
学习资源:《Excel VBA从入门到进阶》第35集 by兰色幻想
本课的示例都在立即窗口展示运行结果,要在立即窗口展示的话要使用“Debug.Print”。
Debug.Print 将代码执行结果显示在“立即窗口”中,但不影响程序执行。
一、字符串截取
1.left,right,mid,Len
这几个函数在Excel中也有,具体的用途如下:
left(字符串,截取长度) 返回从字符串左边算起指定截取长度的字符。
right(字符串,截取长度) 返回从字符串右边算起指定截取长度的字符。
mid(字符串,截取起始位置,截取长度) 返回从字符串左边算的截取起始位置起的指定截取长度的字符。
Len(字符串) 返回字符串长度。
Sub z1()
Dim sr
sr = "Excel精英培训网"
Debug.Print Left(sr, 5) '结果:Excel
Debug.Print Right(sr, 5) '结果:精英培训网
Debug.Print Mid(sr, 6, 2) '结果:精英
Debug.Print Left(sr, Len(sr) - 1) '结果:Excel精英培训
End Sub
![15ec66b8566b1866b5fa58c80ba08485.png](https://i-blog.csdnimg.cn/blog_migrate/72fe06bac216a7020135ffce2974460d.png)
2.split
split 将字符串按特定的字符分开,返回的是一个一维数组,数组的起始下标为0。
Sub z2()
Dim sr, arr
sr = "Excel的精的英的培训网"
arr = Split(sr, "的")
Debug.Print UBound(arr)
Debug.Print arr(0)
End Sub
![7205d9cfe4aaf8fe35110efcbb13c5b4.png](https://i-blog.csdnimg.cn/blog_migrate/928ba2d38ba4bebeb64d9cf192e4406b.jpeg)
![24429c65a9142d7b5ab5143f67a25d26.png](https://i-blog.csdnimg.cn/blog_migrate/bba72dbca7c16f4b4666e900b4d9d116.png)
3.val
val 返回字符串内的数字,遇到非数字字符结束运算。
Sub z3()
Dim sr
sr = "89.90美元"
Debug.Print Val(sr)
End Sub
![72076bc87bc9d56e0b79f6bd3b49a3ec.png](https://i-blog.csdnimg.cn/blog_migrate/7139ebc0a06775f8bbc86e4e1d9cdbc0.jpeg)
经常有人弄混val和value,val是函数,value是属性,引用value需要对象。
4.&
& 连接两个字符串。
Sub a4()
Debug.Print "a" & "b"
End Sub
![51a872cdbb3d945c1d0c020ab43b6ad8.png](https://i-blog.csdnimg.cn/blog_migrate/b0804ac50b2c7b0a861d3431079700e4.png)
5.join
join(数组,连接的字符) 连接字符串。
Sub a5()
Dim sr, arr
sr = "Excel-精英-培训网"
arr = Split(sr, "-")
Debug.Print Join(arr, "+")
End Sub
![5d242e2ff228bb5ba1515e12b3ce4ba3.png](https://i-blog.csdnimg.cn/blog_migrate/32c88a5b162d8a2a02184fe0e96a9689.jpeg)