VB中StrConv函数用法

合集下载

VBA中处理字符串常用函数

VBA中处理字符串常用函数

在VBA中处理字符串1 VBA中的字符串VBA不仅可以处理数字,也可以处理文本(字符串)。

VBA提供了两类字符串:一类为固定长度的字符串,声明时包含指字的字符数。

例如,下面的语句Dim strFixedLong As String*100声明字符串变量后,无论赋予该变量多少个字符,总是只包含100个字符,但字符串最长不超过65526个字符,且需要使用Trim函数去掉字符串中多余的空格。

定长字符串只有在必要时才使用。

另一类为动态字符串。

例如,声明字符串变量Dim strDynamic As String后,可以给该变量任意赋值,最多可包含20亿个字符。

2 VBA中处理字符串的函数2.1 比较字符串通常,在VBA中进行字符串比较时,会用到比较运算符(如=、>等)、Like运算符和StrComp 函数。

此外,在模块的开头用Option Compare语句指定比较方式。

2.1.1 比较运算符可以采用简单的逻辑运算符进行两个字符串的比较,即<(小于)、<=(小于或等于)、>(大于)、>=(大于或等于)、=(等于)、<>(不等于)。

此外,还可以使用Like运算符进行比较。

2.1.2 StrComp函数StrComp函数返回字符串比较的结果。

其语法为:StrComp(string1,string2[,compare])其中,参数string1和strng2为必需的参数,可以是任何有效的字符串表达式。

参数Compare为可选参数,如果该参数为Null,将发生错误。

如果参数Compare设置为常数vbUseCompareOption或-1或忽略该参数,将使用OptionCompare语句设置进行比较;如果忽略该参数且没有设置Option Compare语句,则按二进制进行比较;如果参数Compare设置为常数vbBinaryCompare或0,则用二进制进行比较;如果参数Compare设置为常数vbTextCompare或1,则按文本进行比较;如果参数Compare设置为常数vbDatabaseCompare或2,此时仅适用于Microsoft Access,进行基于数据库信息的比较。

VB常用函数介绍

VB常用函数介绍

VB常用函数介绍一、常用内部函数在VB内部提供了大量函数。

在这些函数中,有些是通用的。

有些则与某种操作有关的。

大体分成五类,分别是:转换函数、数学函数、日期函数、时间函数和随机函数。

(1)转换函数函数名功能Int(x) 返回不大于自变量的最大整数。

Fix(x) 去掉一个浮点数的小数部分,保留其整数部分。

Hex(x) 把一个十进制数转换成为十六进制数。

Oct(x) 把一个十进制数转换成为八进制数。

Asc(x) 返回字符串中第一个字符的ASCII码。

Chr(x) 把值转换为相应的ASCII字符。

Str(x) 把值转换为一个字符串Cint(x) 把小数部分四舍五入,转换为整数。

Ccur(x) 把值转换为货币类型,小数部分最多保留4位。

CDbl(x) 把值转换为双精度数值。

CLng(x) 把值小数部分四舍五入转换为长整型数值。

CSng(x) 把值转换为单精度数值。

CVar(x) 把值转换为变体类型值。

(2)数学函数函数名功能Sin(x) 返回正弦值。

Cos(x) 返回余弦值。

Tan(x) 返回正切值。

Atn(x) 返回反正切值。

Abs(x) 返回绝对值。

Sgn(x) 返回自变量的符号。

即:值为负数时,函数返回-1值为0时,函数返回0值为正数时,函数返回1Sqr(x) 返回自变量x的平方根,自变量必须大于或等于0。

Exp(x) 返回以e为底数,以x为指数的值,即求e的x 次方。

(3)日期函数函数名功能Day(Now) 返回当前的日期。

WeekDay(Now) 返回当前的星期。

Month(Now) 返回当前的月份。

Year(Now) 返回当前的年份。

(4)时间函数函数名功能Hour(Now) 返回小时(0~23)。

Minute(Now) 返回分钟(0~59)。

Second(Now) 返回秒(0~59)。

(5)随机函数Rnd(x) 产生一个0~1之间的单精度随机数Rnd函数可以产生随机数,当一个应用程序不断地重复使用随机数时,同一序列的随机数会反复出现,用Randomize语句可以消除这种情况。

VB常用字符串函数(最常用的7个)

VB常用字符串函数(最常用的7个)

VB常用字符串函数(最常用的7个)最近为了帮一个网友做一个小工具,查看MOTO的串号代表的信息.为了简单方便,就打算用VB做,可是自从我大二时学VB到现在已经快三年了,都忘记的差不多了,特别是系统函数,刚刚找到下面的资料,就收藏起来了.VB常用字符串函数1. ASC(X),Chr(X):转换字符字符码[格式]:P=Asc(X) 返回字符串X的第一个字符的字符码P=Chr(X) 返回字符码等于X的字符[范例]:(1)P=Chr(65)' 输出字符A,因为A的ASCII码等于65(2)P=Asc(“A”)' 输出652. Len(X):计算字符串X的长度[格式]:P=Len(X)[说明]:空字符串长度为0,空格符也算一个字符,一个中文字虽然占用2 Bytes,但也算一个字符。

[范例]:(1) 令X=”” (空字符串)Len(X) 输出结果为0(2) 令X=”abcd”Len(X) 输出结果为4(3) 令X=”VB教程”Len(X) 输出结果为43. Mid(X)函数:读取字符串X中间的字符[格式]:P=Mid(X,n)由X的第n个字符读起,读取后面的所有字符。

P=Mid(X,n,m)由X的第n个字符读起,读取后面的m个字符。

[范例]:(1) X=”abcdefg”P=Mid(X,5)结果为:P=”efg”(2) X=”abcdefg”P=Mid(X,2,4)结果为P=”bcde”4. Replace: 将字符串中的某些特定字符串替换为其他字符串[格式]:P=Replace(X,S,R)[说明]:将字符串X中的字符串S替换为字符串R,然后返回。

[范例]:X=”VB is very good”P=Replace(X,good,nice)输出结果为:P=”VB is very nice”5. StrReverse:反转字符串[格式]:P=StrReverse(X)[说明]:返回X参数反转后的字符串[范例]:(1)X=”abc”P=StrReverse(X)输出结果:P=”cba”6. Ucase(X),Lcase(X):转换英文字母的大小写[格式]:P=Lcase(X)' 将X字符串中的大写字母转换成小写P=Ucase(X)' 将X字符串中的小写字母转换成大写[说明]:除了英文字母外,其他字符或中文字都不会受到影响。

VB.Net常用数学函数整理

VB.Net常用数学函数整理

常用数学函数整理常用数学函数整理System.Math 类中定义了用于数学计算的函数。

Math 类包括三角函数、对数函数和其他常用数学函数。

下列函数是在System 名称空间的 Math 类中定义的函数。

注意:要使用这些函数,请通过在源代码顶部添加以下代码将System.Math 名称空间导入到项目中:Imports System.MathAbsAbs 函数返回指定数值的绝对值。

Abs 示例:本示例使用 Math 类的 Abs 方法来计算一个数值的绝对值。

' Code will not compile unless it is put in a Sub or in a Function.Dim MyNumber As DoubleMyNumber = Abs(50.3) ' Returns 50.3.MyNumber = Abs(-50.3) ' Returns 50.3.AtanAtan 函数返回包含角度的 Double 值。

该角度的正切值是指定的数值。

返回值为正表示角度在X 轴的逆时针方向上。

返回值为负表示顺时针角度。

将该返回值乘以 180 再除以 pi (p) 就可以从弧度转换为度。

Atan 示例:本示例使用 Math 类的 Atan 方法来计算 Pi 值。

' Code is not compiled unless it is put in a Sub or in a Function.Dim pi As Doublepi = 4 * Atan(1) ' Calculate the value of pi.CosCos 函数以弧度表示的角度作为参数,然后返回一个Double 值,表示指定角度的余弦值。

Cos 示例:本示例使用 Math 类的 Cos 方法返回角度的余弦值。

' Code is not compiled unless it is put in a Sub or in a Function.Dim MyAngle, MySecant As DoubleMyAngle = 1.3 ' Define angle in radians.MySecant = 1 / Cos(MyAngle) ' Calculate secant.ExpExp 函数返回一个 Double 值,包含 e(自然对数的底)的指定乘幂。

VB常用函数用法详解

VB常用函数用法详解

V B函数数学函数Abs函数语法:Abs(number)绝对值返回一数值的绝对值。

参数number可以是任何数值表达式。

如果number的值为Null,则返回Null;如果其参数是没有初始值的变数,则返回0。

注解:一个数值的绝对值就是将正负号去掉以后的值。

例如Abs(-1)和A bs(1)的返回值都是1。

Atn函数语法:Atn(number)反正切该函数返回参数的「反正切」(arctangent)值。

参数number可以是任何有效的数值表达式。

注解:Atn函数的参数(number)是直角三角形中构成直角两边的比值(正切函数值),其返回值则为相对应之底角的度数,以「弧度」为单位。

正切函数值(number)的算法为「对边除以邻边」。

返回值的范围落在pi/2到pi/2的「弧度」之间。

「角度」与「弧度」的转换方法为:将「角度」乘以pi/180即为「弧度」。

反过来将「弧度」乘以180/pi便得「角度」。

Cos函数余弦函数语法:Cos(number)该函数返回一角度的cosine(余弦函数)值。

参数number可以是任何有效的数值表达式,其值代表一个角度,以「弧度」为单位。

注解:Cos函数的参数表示角度,返回值为该角度两邻边的比值。

其比值的定义为「连接另一锐角的邻边除以连接直角的邻边」。

返回值的范围在-1到1之间。

Exp函数语法:Exp(number)自然对数之底数该函数返回e(自然对数之底数)的某次方。

参数number可以是任何的数值表达式。

注解:如果number的值超过e的值大约是2.718282。

Log函数自然对数值语法:返回参数的自然对数值。

Log(number)参数number可以是任何的数值表达式,条件是参数值必须大于0。

注解:自然对数是以e为底数的对数。

常数e的值大约是2.718282。

VB函数Rnd函数随机数语法:Rnd[(number)]返回一个随机数。

参数number可以是任何的数值表达式。

VB基础(VB字符串操作方法)

VB基础(VB字符串操作方法)

1.⽅法: SubStr() 中⽂化取⼦字串,相对Mid() Strlen() 中⽂化字串长度,相对Len() StrLeft() 中⽂化取左字串,相对Left() StrRight() 中⽂化取右字串,相对Right() isChinese() 检查某个字是否中⽂字 2.UniCode转成ByteAry Dim byteAry() As Byte Dim str5 As String Dim i As Long str5 = "这abc" byteAry = str5 For i = LBound(byteAry) To UBound(byteAry) Debug.Print byteAry(i) '得 25 144 97 0 98 0 99 0 Next i Debug.Print Len(str5), LenB(str5) '得4 8 所以了,可看出UniCode 的特性,程式应改⼀下,使⽤Strconv()来转换 Dim byteAry() As Byte Dim str5 As String Dim i As Long str5 = "这abc" byteAry = StrConv(str5, vbFromUnicode) For i = LBound(byteAry) To UBound(byteAry) Debug.Print byteAry(i) '得 25 144 97 98 99 Next i Debug.Print LenB(StrConv(str5, vbFromUnicode)) '得5 3.ByteAry转回UniCode 使⽤Strconv()转换 Dim byteAry(10) as Byte Dim Str5 as String byteAry(0) = 25 byteAry(1) = 144 byteAry(2) = 97 byteAry(3) = 98 byteAry(4) = 99 Str5 = StrConv(byteAry, vbUniCode) 4.0、""(空字串)、Null、Empty、与 Nothing 的区别 Dim A Dim B As String Dim C As Integer Dim D As Object A 等于 Empty,因为尚未初始化的「不定型变量」都等于 Empty。

StrConv 函数(vba)

StrConv 函数(vba)

StrConv 函数(vba)
[日期:2009-01-12] 来源:选项是将大写转换成小写或将小写转换成大写。此外,该函数还有一些 DBCS 特定的选项。例如,通过指定该函数第二个参数中的 vbWide,可将半角字符转换成全角字符。也可用此函数将一种字符类型转换成另一种字符类型,如日语中的平假名转换成片假名。如果与系统的 LocaleID 不同,StrConv 允许您为该字符串指定一个 LocaleID。
也可使用 StrConv 函数将 Unicode 字符转换成 ANSI/DBCS 字符或将 ANSI/DBCS 字符转换成 Unicode 字符。通常,Visual Basic 中的字符串由 Unicode 字符组成。当需要处理 ANSI/DBCS 字符串时(例如,在将字符串写入文件之前,计算字符串的字节数),可使用 StrConv 函数的这一功能。

vb常用函数与语句

vb常用函数与语句

一.函数1.Abs函数语法Abs(number)必要的number 参数是任何有效的数值表达式,如果number 包含Null,则返回Null,如果number 是未初始化的变量,则返回0。

说明一个数的绝对值是将正负号去掉以后的值。

例如,ABS(-1) 和ABS(1) 都返回1。

返回参数的绝对值,其类型和参数相同。

2.Array函数返回一个包含数组的Variant。

语法Array(arglist)所需的arglist 参数是一个用逗号隔开的值表,这些值用于给Variant 所包含的数组的各元素赋值。

如果不提供参数,则创建一个长度为0的数组。

说明用来表示数组元素的符号由变量名、圆括号以及括号中的所需元素的索引号组成。

在下面的示例中,第一条语句创建一个Variant 的变量A。

第二条语句将一个数组赋给变量A。

最后一条语句将该数组的第二个元素的值赋给另一个变量。

Dim A As VariantA = Array(10,20,30)B = A(2)使用Array 函数创建的数组的下界受Option Base 语句指定的下界的决定, 除非Array 是由类型库(例如VBA.Array )名称限定。

如果是由类型库名称限定,则Array 不受Option Base 的影响。

注意没有作为数组声明的Variant 也可以表示数组。

除了长度固定的字符串以及用户定义类型之外,Variant 变量可以表示任何类型的数组。

尽管一个包含数组的V ariant 和一个元素为Variant 类型的数组在概念上有所不同,但对数组元素的访问方式是相同的。

3.Asc函数返回一个Integer,代表字符串中首字母的字符代码。

语法Asc(string)必要的string 参数可以是任何有效的字符串表达式。

如果string 中没有包含任何字符,则会产生运行时错误。

说明在非DBCS 系统下,返回值范围为0 –255 。

在DBCS 系统下,则为-32768 –32767。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

VB中StrConv(Text1.Text, vbFromUnicode)是什么意思啊?请高手指点,谢谢!
2012-07-14 13:42小恨有疆|分类:VB |浏览6443次
分享到:
举报| 2012-07-14 13:50提问者采纳
返回按指定类型转换的Variant (String)。

语法
StrConv(string, conversion, LCID)
StrConv 函数的语法有下面的命名参数:
部分说明
string 必要参数。

要转换的字符串表达式。

conversion 必要参数。

Integer。

其值的和决定转换的类型。

LCID 可选的。

如果与系统LocaleID不同,则为LocaleID(系统LocaleID 为缺省值。


设置值
conversion 参数的设置值为:
常数值说明
vbUpperCase 1 将字符串文字转成大写。

vbLowerCase 2 将字符串文字转成小写。

vbProperCase 3 将字符串中每个字的开头字母转成大写。

vbWide* 4* 将字符串中单字节字符转成双字节字符。

vbNarrow* 8* 将字符串中双字节字符转成单字节字符。

vbKatakana** 16** 将字符串中平假名字符转成片假名字符。

vbHiragana** 32** 将字符串中片假名字符转成平假名字符。

vbUnicode 64 根据系统的缺省码页将字符串转成Unicode。

vbFromUnicode 128 将字符串由Unicode 转成系统的缺省码页。

*应用到远东国别。

**仅应用到日本。

注意这些常数是由VBA 指定的。

可以在程序中使用它们来替换真正的值。

其中大部分是可以组合的,例如vbUpperCase + vbWide,互斥的常数不能组合,例如vbUnicode + vbFromUnicode。

当在不适用的国别使用常数vbWide、vb Narrow、vbKatakana,和vbHiragana 时,就会导致运行时错误。

下面是一些一般情况下的有效分界符:Null (Chr$(0)),水平制表符(Chr$(9)),换行(Chr$(10)),垂直制表符(Chr$(11)),换页(Chr$(12)) ,回车(Chr$(13)),空白(SBCS) (Chr$(32))。

在DBCS中,空白的实际值会随国家/地区而不同。

说明
在把ANSI 格式的Byte 数组转换为字符串时,您应该使用StrConv 函数。


您转换Unicode 格式的这种数组时,使用赋值语句。

常数值说明
vbUpperCase 1 将字符串文字转成大写。

s = StrConv("AbCdef", 1) 's = "ABCDEF"
vbLowerCase 2 将字符串文字转成小写。

s = StrConv("AbCdef", 2) 's = "abcdef"
vbProperCase 3 将字符串中每个字的开头字母转成大写。

s = StrConv("ni hao", 3) 's = "Ni Hao"
每个字的开头= 前面有空格,与是不是单词无关
s = StrConv("nihao", 3) 's = "Nihao"
vbWide* 4* 将字符串中单字节字符转成双字节字符。

s = StrConv("Ab123你好", 4) 's = "Ab123你好"
(瘦子变胖子,对中文无效)
vbNarrow* 8* 将字符串中双字节字符转成单字节字符。

s = StrConv("Ab123你好", 8) 's = "Ab123你好"
(胖子变减肥,对中文无效)
vbKatakana** 16** 将字符串中平假名字符转成片假名字符。

小鬼子用的
vbHiragana** 32** 将字符串中片假名字符转成平假名字符。

小鬼子用的
vbUnicode 64 根据系统的缺省码页将字符串转成Unicode。

对概念不太明白,暂时这样理解:
Unicode =在内存里的表现方式(2进制?
而系统的缺省码页=我们所看到的
s = StrConv("你好", 64) 's = "`O}Y"
vbFromUnicode 128 将字符串由Unicode 转成系统的缺省码页。

应用案例:处理二进制数组与字符串比较时用
s = StrConv("`O}Y", 128) 's = "你好"
对于64、128 的理解不一定正确,但在处理程序间的数据交换时是很有用的,比如用open 语句打开文本文件。

说的比较笼统,只有在接触后才容易体会。

备注:“*”应用到远东国别,“**”仅应用到日本。

注意:
这些常数是由VBA 指定的。

可以在程序中使用它们来替换真正的值。

其中大部分是可以组合的,例如vbUpperCase + vbWide,互斥的常数不能组合,例如vbUnicode + vbFromUnicode。

当在不适用的国别使用常数vbWide、vbNarrow、vbKatakana,和vbHir
agana 时,就会导致运行时错误。

下面是一些一般情况下的有效分界符:
Null (Chr$(0))
水平制表符(Chr$(9))
换行(Chr$(10))
垂直制表符(Chr$(11))
换页(Chr$(12))
回车(Chr$(13))
空白(SBCS) (Chr$(32))。

在DBCS中,空白的实际值会随国家/地区而
不同。

说明:
在把ANSI 格式的Byte 数组转换为字符串时,您应该使用StrConv 函数。

当您转换Unicode 格式的这种数组时,使用赋值语句。

StrConv 函数示例:
本示例使用StrConv 函数来将Unicode 字符串转换成ANSI 字符串。

Dim i As Long
Dim x() As Byte
x = StrConv("ABCDEFG", vbFromUnicode) ' 转换字符串。

For i = 0 To UBound(x)
Debug.Print x(i)
Next
提问者评价
回答的好专业啊!。

相关文档
最新文档