一、基礎概述
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