最近更新:'2019-05-15'
- 字符串函数
- For Each语句
1. 字符串函数
系统函数:vBA中内置的、已经编写好的函数,可以在自己的程序中随时调用,实现一些常用功能(如数学运算、文本处理等)
1.1函数:Sqr(a)
功能:计算并返回a的平方根
Sub 数学函数示例()
Dim a
a = Sqr(5)
MsgBox a
End Sub
1.2函数:Len(s)
功能:返回字符串s的长度,即s中有多少字符(一个中文字符长度也为1)
案例1:
Sub 字符串函数示例()
Dim a, s
s = "大家好abc"
a = Len(s)
MsgBox a
End Sub
案例2:
Sub 字符串函数示例()
Dim a, s
s = " 大家好abc "
a = Len(s)
MsgBox a
End Sub
1.3函数:Trim(s)
功能:返回一个新的字符串,该串的内容等于s去掉了两端的所有空格。
Sub 字符串函数示例()
Dim a, s
s = " 大家好abc "
a = Trim(s)
MsgBox "[" & a & "]"
End Sub
注意事项:
1.trim(s)中的s没有发生任何的变化,两端仍然有空格.
2.trim(s)中的s如果中间有空格,结果返回的只有两边的空格会消失,而中间空格还在.
1.4函数: Replace(s,a,b)
功能:返回一个新的字符串,该串的内容等于把s中所有的a都替换成b之后的样子。
Sub 字符串函数示例()
Dim a, s
s = " 大家 好 abc "
a = Replace(s, " ", ",")
MsgBox a
End Sub
1.5 函数:UCAse(s)和函数:LCase(s)
函数:UCAse(s)
功能:返回一个新的字符串,该串的内容等于把s中所有的英文字母都变成大写(其他字符不变)的样子。
函数: LCase(s)
功能:返回一个新的字符串,该串的内容等于把s中所有的英文字母都成小写(其他字符不变)的样子
1.6函数: Right(s,a)
功能:从s的右边取出a个字符,构成新的字符串并返回。
Sub 字符串函数示例()
Dim a, s
s = "大家好abc"
a = Right(s, 2)
MsgBox a
End Sub
1.7函数:Left(s,a)
功能:从s的左边取出a个字符,构成新的字符串并返回
Sub 字符串函数示例()
Dim a, s
s = "大家好abc "
a = Left(s, 2)
MsgBox a
End Sub
1.8函数:Mid(s,i,a)
功能:从s的第i个字符开始,取出a个字符返回。
Sub 字符串函数示例()
Dim a, s
s = "大家好abc"
a = Mid(s, 1, 2)
MsgBox a
End Sub
1.9函数:InStr(s,a)
功能:在s中寻找a,如果找到则返回a出现的位置(第几个字符)如果没有找到则返回0。
Sub 字符串函数示例()
Dim a, s
s = "吃葡萄不吐葡萄皮"
a = InStr(s, "葡萄")
MsgBox a
End Sub
函数:InStr(i,s,a)
功能:在s中,从第i个字符开始寻找a,如果找到则返回a出现的位置(第几个字符)如果没有找到则返回0。
Sub 字符串函数示例()
Dim a, s
s = "吃葡萄不吐葡萄皮"
a = InStr(3, s, "葡萄")
MsgBox a
End Sub
1.10综合案例:
Sub test()
s = "广渠路55号307室"
路字 = InStr(s, "路")
号字 = InStr(s, "号")
Cells(2, 3) = Left(s, 路字)
Cells(2, 4) = Mid(s, 路字 + 1, 号字 - 路字)
Cells(2, 5) = Right(s, Len(s) - 号字)
End Sub
2. For Each语句
常见的使用方法如下截图:
案例:
将4月,5月,6月的每个员工的业绩统一求和汇总在季度汇总表.如下截图:
代码显示的最终结果如下
网友评论