第35集 字符串的拆分组合转换
153、 字符串的截取
Left、Right、Mid函数
Sub z1()
Dim sr
sr = “Excel精英培训网”
Debug.Print Left(sr, 5)
Debug.Print Right(sr, 5)
Debug.Print Mid(sr, 3, 5)
Debug.Print Left(sr, Len(sr) - 1)
End Sub
Split和Join函数
Sub z2()
Dim sr, arr
sr = “Excel-精英-培训网”
arr = Split(sr, “-”)
Debug.Print UBound(arr) '可利用数组的最大索引确定分隔符的个数
End Sub
Sub a5()
Dim sr, arr
sr = “Excel-精英-培训网”
arr = Split(sr, “-”)
Debug.Print Join(arr, “+”)
End Sub
Val函数:提取字符中的数字,必须是数字开头才行
Sub z3()
Dim sr
sr = “89.90美元”
Debug.Print Val(sr)
End Sub
&连接符
Sub a4()
Debug.Print “a” & “b”
End Sub
154、 字符串的查找与替换
InStr:从前向后查,返回位置
InStrRev:从后先前查,返回从左数的位置
Sub c1()
Dim sr
sr = “Excel精英培训”
Debug.Print InStr(sr, “精英”) > 0 '利用位置>0 ,可判断查找内容是否存在
End Sub
Sub c2()
Dim sr
sr = “Excel精英培训培训论坛”
Debug.Print InStrRev(sr, “培”) '返回10
End Sub
Replace:替换
Sub c5()
Dim sr
sr = “Excel精英培训网”
sr = Replace(sr, “培训网”, “论坛”)
Debug.Print sr
End Sub
Mid替换
Sub c6()
Dim sr
sr = “Excel精英培训网”
Mid(sr, 8, 3) = “论坛” '只替换前2个字符
Debug.Print sr
End Sub
155、 字符转换
LCase:将字符串中的大写转换成小写,原小写不变
Sub z1()
Debug.Print LCase(“ABC”)
End Sub
UCcae:将字符串中的小写转换成大写,原大写不变
Sub z2()
Debug.Print UCase(“Abc”)
End Sub
StrConv函数:
常数 值 说明
vbUpperCase 1 将字符串文字转成大写。
vbLowerCase 2 将字符串文字转成小写。
vbProperCase 3 将字符串中每个字的开头字母转成大写
Sub 转换()
Debug.Print VBA.StrConv(“wHo ARE you?”, vbProperCase)
End Sub
Sub 转换2()
Dim i As Long
Dim x() As Byte
x = StrConv(“ABCDEFG”, vbFromUnicode) ’ 转换字符串为ASCII数字。
Debug.Print Application.Min(x)
For i = 0 To UBound(x)
Debug.Print x(i)
Next
End Sub
Trim:删除两端空格
Ltrim:删除左边空格
Rtrim:删除右边空格
Sub z3()
Dim sr
sr = " A B BC "
Debug.Print Trim(sr)
Debug.Print LTrim(sr)
Debug.Print RTrim(sr)
End Sub
Asc:返回一个 Integer,代表字符串中首字母的字符代码,ANSI 字符集
Chr:返回 String,其中包含有与指定的字符代码相关的字符
Sub z4()
Debug.Print Asc(“Z”)
Debug.Print Chr(90)
End Sub
Space 和 string生成重复的字符
Sub z5()
Debug.Print “A” & Space(10) & “B”
Debug.Print “C” & String(10, “*”) & “D”
End Sub