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
值为正数时,函数返回1
Sqr(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语句可以消除这种情况。
二、字符串函数
(1)删除空白字符函数
函数名 功能
LTrim(字符串) 去掉“字符串”左边的空白字符;
RTrim(字符串) 去掉“字符串”右边的空白字符;
Trim(字符串) 去掉“字符串”两边的空白字符;
(2)字符串截取函数
①左部截取
格式:Left(字符串,n)
返回字符串的前n个字符(n≥0)。
②中部截取
格式:Mid(字符串,p,n)
从第P个字符开始,向后截取n个字符(P>0,n≥0)。函数的第三个自变量可以省略。在省略的情况下,将从第二个自变量指定的位置向后截取到字符串的末尾。
③右部截取
格式:Right(字符串,n)
返回字符串最后n个字符(n≥0)。
(3)字符串长度测试函数
格式:Len(字符串) Len(变量名)
用Len函数可以测试字符串的长度,也可以测试变量的存储空间。
(4)String函数
格式:String(n,ASCII码) String(n,字符串)
返回由n指定个数组成的字符串。第二个自变量可以使用ASCII码,也可以是字符串。
(5)空格函数
格式:Space(n)
返回n个空格。
(6)字符串匹配函数
格式:InStr([首字符位置,]字符串1,字符串2 [,n])
在函数中“字符串1”中查找“字符串2”,如果找到了,则返回“字符串2”的第一个字符的位置。若为字符串首字符,则位置为1。
说明:
①“字符串2”的长度限于65535个字符内。
②“首字符位置”是可选项。如果含有“首字符位置”,则从该位置开始查找,否则从“字符串1”的起始位置开始查找。“首字符位置”是一个长整数。
③函数的最后n是可选项,类型为整型数,用来指定字符串比较。取范围是:0、1、2。
为0使用二制进比较,区分字母的大小写;
为1比较时忽略大小写;
为2则基于数据库中包含的信息进行比较(限于Access数据库)。
(7)字母大小写转换
格式:Ucase(字符串)’小写字母转大小字母。
Lcase(字符串)’大写字母转换为小写字母。
三、MsgBox函数
MsgBox函数的格式如下:
MsgBox(msg [,Type][,Title][,HelpFile,Context])
① ② ③ ④
函数共有5个参数,除①参数外,其余都是可选参数。
①msg是字符串类型,长度限制为1024字符。超出字符会被自动截取。
②type是一个整数值或符号常量,用来控制在对话框内显示的按钮、图标的类型。参数值由四类数值相加产生,这四类数值或符号常量分别表示按钮的类型、显示图标的种类、活动按钮的位置及强制返回。
常数 值 描述
vbOKOnly 0 只显示 OK 按钮。
VbOKCancel 1 显示 OK 及 Cancel 按钮。
VbAbortRetryIgnore 2 显示 Abort、Retry 及 Ignore 按钮。
VbYesNoCancel 3 显示 Yes、No 及 Cancel 按钮。
VbYesNo 4 显示 Yes 及 No 按钮。 VbRetryCancel 5 显示 Retry 及 Cancel 按钮。
VbCritical 16 显示 Critical Message 图标。
VbQuestion 32 显示 Warning Query 图标。
VbExclamation 48 显示 Warning Message 图标。
VbInformation 64 显示 Information Message 图标。vbDefaultButton1 0 第一个按钮是缺省值。
vbDefaultButton2 256 第二个按钮是缺省值。
vbDefaultButton3 512 第三个按钮是缺省值。
vbDefaultButton4 768 第四个按钮是缺省值。vbApplicationModal 0 应用程序强制返回;应用程序一直被挂起,直到用户对消息框作出响应才继续工作。
vbSystemModal 4096 系统强制返回;全部应用程序都被挂起,直到用户对消息框作出响应才继续工作。
vbMsgBoxHelpButton 16384 将Help按钮添加到消息框
VbMsgBoxSetForeground 65536 指定消息框窗口作为前景窗口
vbMsgBoxRight 524288 文本为右对齐
vbMsgBoxRtlReading 1048576 指定文本应为在希伯来和阿拉伯语系统中的从右到左显示
vbSystemModal 4096 系统强制返回;全部应用程序都被挂起,直到用户对消息框作出响应才继续工作。
Type参数由上表的四类数值组成,原则是:从每一类中选择一个值(仅仅一个值,不得重复),把这几个值加在一起就是Type参数的值(一般情况下,只需要使用前三类)。
示例:MsgBox “是否暂停打印!”,16,”提示”
Type参数为16分解成:
16=0+16+0 显示“确定”按钮(0)+“暂停”图标(16)+默认按钮为“确定”(0)MsgBox”是否退出程序。”,35,”退出”
Type参数为35分解成:
35=3+32+0 显示“是、否、取消”3个按钮(3)+“?”图标(32)+ 默认按钮(0)③Title是一个字符串,用来显示对话框的标题。
④HelpFile、Context : HelpFile是一个字符串变量或字符串表达式,用来表示帮助文件的名字,Context是一个数值变量或表达式,用来表示相关帮助主题的帮助目录号。
MsgBox函数的返回值是一个整数,这个整数与所选择的命令按钮相关。
返回值参数表:
常数 值 描述
vbOK 1 OK
vbCancel 2 Cancel
vbAbort 3 Abort
vbRetry 4 Retry
vbIgnore 5 Ignore
vbYes 6 Yes
vbNo 7 No
示例:Dim Tmp as long
Tmp=MsgBox(”是否退出程序。”,35,”退出”)
Msgbox “你选择的按钮值是:”&Tmp
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long)
Public Function ReadStr(ByRef j As Integer, s As Integer, d() As Byte) As String
Dim i As Integer
'Dim j As Integer
j = d(s) '将d(s)的值赋值到j
Dim ss As String
ss = String$(j, 0) 'ss赋值j个空字符串,string(number,character),返回number个character,character可以是数字也可以是字符串,数字直接转换为响应的字符码
CopyMemory ByVal ss, d(s + 1), j '将内存地址为d(s + 1)的j字节大小的数据复制到ss中
ReadStr = ss
End Function
'这个函数有一个问题,就是参数j没有用,带参数j进来无论什么值都不会对函数有什么作用,因为j在函数过程中被重新定义了
c#怎么写还真不太清楚,不过你学c#那么经过解释应该也会怎么改了吧
VB6的String()函数,在VBNET中,改用 StrDup()函数,使用格式与VB6的String()函数类似:
例如:
VB6中,String(5,"") ,是产生5个星号字符,""
VBNet中,改用 StrDup(5,"") ,也是产生5个星号字符,""
Private Sub Form_Load() Show a = 95: b = 85: c = 75: d = 96: e = 75: f = 75 Print String(a / 5, "◆"); " "; a Print String(b / 5, "◆"); " "; b Print String(c / 5, "◆"); " "; c Print String(d / 5, "◆"); " "; d Print String(e / 5, "◆"); " "; e Print String(f / 5, "◆"); " "; f End Sub 貌似这样
InStr 函数,返回 Variant (Long),指定一字符串在另一字符串中最先出现的位置,InStr函数可以找到指定的字符串在另一字符串中最先出现的位置。
使用这个函数的语法:
InStr([start, ]string1, string2[, compare])
这个函数需要的的参数是起始位置、主体字符串、要查找的字符串;Compare是可选参数。指定字符串比较。此compare参数是可以省略的,也可以是 0, 1或 2。
指定0(缺省)做二进制比较。指定1做不区分大小写的文本比较。例如我们要查找在字符串“abcdefg”中是否存在“cd”并返回其位置,则使用下面的语句就可以实现:
pos=InStr(1,"abcdefg","cd")
pos会返回3表示查找到并且位置为第三个字符开始。这就是“查找”的实现,而“查找下一个”功能的实现就是把当前位置作为起始位置继续查找。
扩展资料:
instr函数为字符查找函数,其功能是查找一个字符串在另一个字符串中首次出现的位置。instr函数在Oracle/PLSQL中是返回要截取的字符串在源字符串中的位置。
参数
string1:源字符串,要在此字符串中查找。
string2:要在string1中查找的字符串 。
start_position:代表string1 的哪个位置开始查找。此参数可选,如果省略默认为1 字符串索引从1开始。如果此参数为正,从左到右开始检索,如果此参数为负,从右到左检索,返回要查找的字符串在源字符串中的开始索引。
nth_appearance:代表要查找第几次出现的string2 此参数可选,如果省略,默认为 1如果为负数系统会报错。
-instr函数
因为VB的String 函数是返回包含指定长度重复字符的字符串。
String 函数,返回 Variant (String),其中包含指定长度重复字符的字符串。
注意上图红色框内的说明:其第一个字符将用于建立返回的字符串。
你用下面的例子试一下把:
1用强制转换
Dim a as string,i as integer
a="1253"
i=a
现在字符串a就转换成了整型数i。
2用类型转换函数Cint()
Dim a as string,i as integer
a="1253"
i=Cint(a)
3用Val()函数
该函数返回包含于字符串内的数字,字符串中是一个适当类型的数值。
Dim a as string,i as integer
a="1253"
i=Val(a)
说明:这里的“i=Val(a)”实际上也用到了上面说的强制转换数据类型的功能,如果你把前面的定义换成“i as Single”,则输出到i中的数值就是1253这个单精度浮点数据,则不是13这个整数了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)