玖叶教程网

前端编程开发入门

VBA常见的文本处理函数

VBA文本函数是日常使用较多的应用,今天我们来学习常见的文本处理函数。

1.1 文本截取

Left:取文本左边

Right:取文本右边

Mid:去文本中间

MID(文本,截取的开始位置,截取长度)

Sub 文本截取()
    Debug.Print VBA.Left("我爱您,我的祖国", 2) '取文本左边2位
    Debug.Print VBA.Right("我爱您,我的祖国", 2) '取文本右边2位
    Debug.Print VBA.Mid("我爱您,我的祖国", 3, 2) '从文本的第3位截取,截取2位
    Rem MID(文本,开始截取位置,截取长度)
End Sub

1.2 文本分割

split(被分割文本,分割字符)

val 拆分字符与数字,必须是数字开头

Sub 文本分割()
    Dim str As String
    Dim arr
    str = "我的心在-等待一直在-等待-等待中"
    arr = VBA.Split(str, "-")
    Stop
    
    str = "58.25人民币"
    MsgBox Val(str)
    
End Sub

1.3 文本组合

&

Sub 文本组合()
    Dim str As String
    str = "我爱VBA" & ",也爱表格" & ",同样我也爱PPT"
    Debug.Print str
    
End Sub



1.4 文本查找

InStr(被查找的文本,欲查找的文本) '从前往后查找,查找到,返回第一个字符串出现的位置,否则返回0

InStrRev(被查找的文本,欲查找的文本) '从后往前查找,查找到,返回第一个字符串出现的位置,否则返回0

Sub 文本查找()
    Dim str As String
    str = "我爱VBA,我一定要学好"
    
    '从前往后查找
    Debug.Print InStr(str, "爱")
    
    '从后往前查找
    Debug.Print InStrRev(str, "我")
    
End Sub

1.5 文本替换

Replace(文本,被替换文本,替换成文本)

Sub 文本替换()
    Dim str As String
		str = "我爱VBA,我一定要学好"
    Debug.Print Replace(str, "VBA", "语文")
       
    '截取的文本应该与替换的文本应该保持一直,否则容易弄错
    Mid(str, 3, 3) = "写文章"
    Debug.Print str
End Sub


1.6 字符串替换

LCase(转换文本)转小写

UCase(转换文本)转大写

StrConv函数转换

常量 值 说明

  • vbUpperCase 1 将字符串文本转成大写
  • vbUpperCase 2 将字符串文本转成小写
  • vbUpperCase 3 将字符串文本开头字母转大写
Sub 文本转换()
    Dim str1, str2, str3 As String
    str1 = "我爱VBa"
    
    '转小写
    Debug.Print VBA.LCase(str1)
    '转大写
    Debug.Print VBA.UCase(str1)
    
    
    Rem 使用StrConv函数转换
    
    Rem    常量            值      说明
    Rem   vbUpperCase      1       将字符串文本转成大写
    Rem   vbUpperCase      2       将字符串文本转成小写
    Rem   vbUpperCase      3       将字符串文本开头字母转大写
    
    str1 = "VBA转小写"
    str2 = "vab转大写"
    str3 = "vba首字母转大写"
    
    Debug.Print VBA.StrConv(str1, 2)
    Debug.Print VBA.StrConv(str2, 1)
    Debug.Print VBA.StrConv(str3, 3)
    
End Sub

1.6 文本删空

VBA.Trim 删除两端空

VBA.LTrim 删除左边空

VBA.RTrim 删除右边空

Sub 文本删空格()
    Dim str As String
    str = " V B A是办公自动必须的一种语言 "
    
    Debug.Print Trim(str)
    Debug.Print LTrim(str)
    Debug.Print RTrim(str)
    
End Sub

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言