资源描述:
《vba中的字符串操作》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、1VBA中的字符串2VBA中处理字符串的函数 2.1比较字符串 2.2转换字符串 2.3创建字符串 2.4获取字符串的长度 2.5格式化字符串 2.6查找字符串 2.7提取字符/字符串 2.8删除空格 2.9返回字符代码 2.10返回数值代表的相应字符 2.11使用字节的函数 2.12返回数组的函数 2.13连接字符串 2.14替换字符串 2.15反向字符串------------------------------1VBA中的字符串VBA不仅可以处理数字,也可以处
2、理文本(字符串)。VBA提供了两类字符串:一类为固定长度的字符串,声明时包含指字的字符数。例如,下面的语句DimstrFixedLongAsString*100声明字符串变量后,无论赋予该变量多少个字符,总是只包含100个字符,但字符串最长不超过65526个字符,且需要使用Trim函数去掉字符串中多余的空格。定长字符串只有在必要时才使用。另一类为动态字符串。例如,声明字符串变量DimstrDynamicAsString后,可以给该变量任意赋值,最多可包含20亿个字符。-----------------------------
3、-2VBA中处理字符串的函数2.1比较字符串通常,在VBA中进行字符串比较时,会用到比较运算符(如=、>等)、Like运算符和StrComp函数。此外,在模块的开头用OptionCompare语句指定比较方式。2.1.1比较运算符可以采用简单的逻辑运算符进行两个字符串的比较,即<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、=(等于)、<>(不等于)。此外,还可以使用Like运算符进行比较。2.1.2StrComp函数StrComp函数返回字符串比较的结果。其语法为: StrComp(string1,st
4、ring2[,compare])其中,参数string1和strng2为必需的参数,可以是任何有效的字符串表达式。参数Compare为可选参数,如果该参数为Null,将发生错误。如果参数Compare设置为常数vbUseCompareOption或-1或忽略该参数,将使用OptionCompare语句设置进行比较;如果忽略该参数且没有设置OptionCompare语句,则按二进制进行比较;如果参数Compare设置为常数vbBinaryCompare或0,则用二进制进行比较;如果参数Compare设置为常数vbTextCom
5、pare或1,则按文本进行比较;如果参数Compare设置为常数vbDatabaseCompare或2,此时仅适用于MicrosoftAccess,进行基于数据库信息的比较。StrComp函数的返回值为:如果String1String2,则返回值为1;如果String1或String2为Null,则返回值为Null。看看下面的示例:SubtestStringCompare() DimMyStr1AsString,MyStr
6、2AsString,MyComp1,MyComp2,MyComp3,MyComp4 MyStr1="ABCD" MyStr2="abcd" MyComp1=StrComp(MyStr1,MyStr2,1) '返回0 MyComp2=StrComp(MyStr1,MyStr2,0) '返回-1 MyComp3=StrComp(MyStr1,MyStr2) '返回-1 MyComp4=StrComp(MyStr2,MyStr1) '返回1 MsgBox"StrComp(MyStr1,MyStr2,1)的结果为:"
7、&MyComp1 MsgBox"StrComp(MyStr1,MyStr2,0)的结果为:"&MyComp2 MsgBox"StrComp(MyStr1,MyStr2)的结果为:"&MyComp3 MsgBox"StrComp(MyStr2,MyStr1)的结果为:"&MyComp4EndSub示例说明:如果StrComp函数的第三个参数值为1,则以文本比较的方式进行字符串比较;如果第三个参数值为0或忽略该参数,则以二进制比较的方式进行字符串比较。注意,文本比较的方式不区分字母大小写,而二进制比较方式则区分大小写。[编程方法
8、和技巧]完成一次简单的单一比较,如IfUCase(sString1)