一、基礎概述
1、VBA中的字元串用雙引號括起來,例如:”Hello World”。
2、字元串可以通過賦值語句或者函數返回值來進行賦值,例如:msg = “Hello World” 或者 msg = InputBox(“請輸入信息”)。
3、字元串連接符號是&,例如:msg = “Hello ” & “World”。
Sub StringDemo()
Dim msg As String
msg = "Hello"
'使用 & 連接字元串
msg = msg & " World!"
MsgBox msg
'使用函數返回值賦值字元串
msg = InputBox("請輸入信息")
MsgBox msg
End Sub
二、字元串的常用操作
1、字元串的長度
VBA中可以使用函數Len()獲取字元串的長度,例如:Len(“Hello World”) = 11。
Sub StringDemo()
Dim msg As String
msg = "Hello World"
'獲取字元串長度
MsgBox Len(msg)
End Sub
2、字元串的截取
截取字元串可以使用函數Left()、Mid()、Right(),它們分別表示從左邊、中間、右邊開始截取指定數量的字元。
Sub StringDemo()
Dim msg As String
msg = "Hello World"
'從左邊開始截取5個字元
MsgBox Left(msg, 5)
'從第6個字元開始截取5個字元
MsgBox Mid(msg, 6, 5)
'從右邊開始截取5個字元
MsgBox Right(msg, 5)
End Sub
3、字元串的替換
替換字元串可以使用函數Replace(),它可以將一個字元串中的指定子字元串替換成另一個字元串。
Sub StringDemo()
Dim msg As String
msg = "Hello World"
'將 "World" 替換成 "VBA"
MsgBox Replace(msg, "World", "VBA")
End Sub
4、字元串的查找
查找字元串可以使用函數Instr(),它可以查找一個字元串中第一個出現的指定子字元串的位置。
Sub StringDemo()
Dim msg As String
msg = "Hello World"
'查找字元串的位置
MsgBox InStr(msg, "World")
End Sub
5、字元串的轉換
字元串的大小寫轉換可以使用函數UCase()、LCase(),它們分別表示將字元串轉換成大寫和小寫。
Sub StringDemo()
Dim msg As String
msg = "Hello World"
'將字元串轉換成大寫
MsgBox UCase(msg)
'將字元串轉換成小寫
MsgBox LCase(msg)
End Sub
三、字元串的格式化輸出
VBA中可以使用函數Format()對字元串進行格式化輸出,它支持各種類型的格式化。
常用的格式化類型有:
- 數字格式化:#, ##, ###, 0, 00, 000, 0.00;
- 日期格式化:yyyy, mm, dd, hh, nn, ss;
- 貨幣格式化:¥#,##0.00。
Sub StringDemo()
Dim msg As String
msg = "Hello World"
'數字格式化
MsgBox Format(12345, "0.00")
'日期格式化
MsgBox Format(Date, "yyyy-mm-dd")
'貨幣格式化
MsgBox Format(12345, "¥#,##0.00")
End Sub
四、字元串的轉換
1、字元串與字元數組之間的轉換
可以使用VBA中的函數Split()將一個字元串按照指定的分隔符號分割成一個字元數組。
例如,可以將 “Hello World” 分割成 { “Hello”, “World” }。
Sub StringDemo()
Dim msg As String
msg = "Hello World"
'將字元串按照空格分割成字元數組
Dim arr() As String
arr = Split(msg, " ")
'輸出字元數組
Dim i As Integer
For i = 0 To UBound(arr)
MsgBox arr(i)
Next i
End Sub
將一個字元數組合併成一個字元串可以使用VBA中的函數Join()。
例如,{“Hello”, “World”} 可以被合併成 “Hello World”。
Sub StringDemo()
Dim arr(1) As String
arr(0) = "Hello"
arr(1) = "World"
'將字元數組合併成字元串
Dim msg As String
msg = Join(arr, " ")
'輸出字元串
MsgBox msg
End Sub
2、字元串與數字之間的轉換
字元串和數字之間的轉換可以使用VBA中的CStr()和CInt()等函數。
Sub StringDemo()
Dim num As Integer
num = 123
'將數字轉換成字元串
Dim msg As String
msg = CStr(num)
MsgBox msg
'將字元串轉換成數字
MsgBox CInt("123")
End Sub
五、總結
VBA中的字元串是程序中不可或缺的一部分,它可以進行各種常用的操作,例如字元串的連接、截取、替換和查找等。同時,還可以通過格式化輸出使字元串具有更好的可讀性,並且可以方便地和字元數組、數字等進行轉換。
原創文章,作者:PZXN,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/146178.html
微信掃一掃
支付寶掃一掃