常用内部函数
数学函数
函数 | 功能 | 示例 | 结果 | 说明 |
Abs(x) | 绝对值 | Abs(-50.3) | 50.3 | |
Exp(x) | 自然指数 | Exp(2) | e^2 | e(自然对数的底)的某次方 |
Fix(x) | 取整(取参数的整数部分) | Fix(-99.8) | -99 | 参数大于 0 时,去掉小数部分;参数小于 0 时,返回大于或等于该参数值 |
Int(x) | 取整(取小于或等于参数的最大整数) | Int(-99.8) Int(99.8) | -100 99 | 参数大于 0 时,去掉小数部分;参数小于 0 时,返回小于或等于该参数值 |
Log(x) | 常用对数 | Log(1) | 0 | 求自然对数值 |
Rnd | 随机产生0~1的单精度值 | Int(6*Rnd)+1 | 1~6 | 要产生一个从Min到Max的整数,应使用公式Int((Max-Min+1)*Rnd+Min) |
Round(x,n) | 按小数位数四舍五入 | Round(3.14159,3) | 3.142 | 第2个参数为小数位数 |
Sgn(x) | 取参数的符号值 | Sgn(8.8) Sgn(-8.8) Sgn(0) | 1 -1 0 | 参数大于0,返回1 参数小于0,返回-1 参数等于0,返回0 |
Sin(x) | 正弦 | Sin(3.14159265/180*90) | 1 | 三角函数以“弧度”为单位 |
Cos(x) | 余弦 | Cos(3.14159265/180*180) | -1 | |
Atn(x) | 计算反正切 | Atn(1) | 0.7854 | |
Tan(x) | 计算正切 | Tan(3.14159265/180*45) | 1 | |
Sqr(x) | 算术平方根 | Sqr(9) | 3 | 相当于 |
字符串函数
函数 | 功能 | 示例 | 结果 | 说明 |
Len(x) | 求字符串的长度(字符个数) | Len("Vb技术") | ||
LenB(x) | 求字符串的字节个数 | LenB("Vb技术") | 8 | VB中采用Unicode(ISO字符标准)来存储字符,所有字符都占2个字节 |
Mid(x,n1,n2) | 从x字符串左边第n1个位置开始向右取n2个字符 | Mid("Vb技术",2,2) | "b技" | |
Left(x,n) | 从x字符串左边开始取n个字符 | Left("Vb技术",3) | "Vb技" | |
Right(X,n) | 从x字符串右边开始取n个字符 | Right("Vb技术",3) | "b技术" | |
UCase(x) | 将x字符串中所有小写字母转换为大写 | UCase("Vb技术") | "VB技术" | |
LCase(x) | 将x字符串中所有大写字母转换为小写 | LCase("Vb技术") | "vb技术" | |
Trim(x) | 去掉x字符串两边的空格 | Trim(" Vb 技术 ") | "Vb 技术" | |
Ltrim(x) | 去掉x字符串左边的空格 | Ltrim(" Vb 技术 ") | "Vb 技术 " | |
Rtrim(x) | 去掉x字符串右边的空格 | Rtrim(" Vb 技术 ") | " Vb 技术" | |
Instr(x1,x2,M) | 返回字符串x2在字符串x1中的位置,M=1不区分大小写,省略则区分 | Instr("baBBAC","BA") | 找不到则返回0 | |
String(n,x) | 返回由n个首字符组成的字符串 | String(3,"AB") | "AAA" | |
Space(n) | 返回n个空格 | Space(3) | " " |
日期和时间函数
函数 | 功能 | 示例 | 结果 | 说明 |
Date | 返回系统日期 | Date | 2006-9-1 | (yyyy-mm-dd) |
Time | 返回系统时间 | Time | 15:45:33 | (hh:mm:ss) |
Now | 返回系统日期和时间 | Now | 2006-9-1 15:45:33 | (yyyy-mm-dd hh:mm:ss) |
Year(c) | 返回指定日期的年份 | Year("2006-9-1")或 Year(#9/1/2006#) | 2006 | |
Month(c) | 返回指定日期的月份 | Month("2006-9-1") | 9 | |
Day(c) | 返回指定日期的日子 | Day("2006-9-1") | 1 | |
Weekday() | 返回指定日期的星期几 | Weekday("2006-9-1") | 6 | 星期日为1 |
Hour() | 返回指定时间的时数 | Hour("15:45:33") | 15 | |
Minute() | 返回指定时间的分数 | Minute(Now) | 45 | 假定系统时间为15:45:33 |
增减日期函数: DateAdd(要增减日期形式,增减量,要增减的日期)
例:计算2周后的日期:DateAdd("ww",2,#9/1/2006#),结果 "2006-9-15"
求日期之差函数: DateDiff(要间隔日期形式,日期一,日期二)
例:计算生日还有多少天: DateDiff("d", Now, #12/1/2006#) ,结果为 74
函数中的“要增减日期形式”或“要间隔日期形式”可参见下表中的形式:
日期形式 | yyyy | q | m | y | d | w | ww | h | n | s |
意义 | 年 | 季 | 月 | 一年的天数 | 日 | 一周的天数 | 星期 | 时 | 分 | 秒 |
数据类型转换函数
函数 | 功能 | 示例 | 结果 | 说明 |
Str(x) | 将数值转换为字符串 | Str(45.2) | "45.2" | |
Val(x) | 将字符串中的数字转换成数值 | Val("2.3ab") Val("a23") | 2.3 0 | |
Asc(x) | 求字符ASCII值 | Asc("a") | ||
Chr(x) | 将数值(ASCII码)转换为字符 | Chr(65) | "A" | |
CBool(x) | 将数字字符串或数值转换成布尔型 | CBool(1) CBool("0") | True False | 等于0为False,不等于0为True |
CDate(x) | 将有效的日期字符串转换成日期 | CDate(#1990,2,23#) | "1990-2-23" | |
CSng(x) | 将数值转换成单精度型 | CSng(23.5125468) | 23.51255 | |
CDbl(x) | 将数值转换成双精度型 | CDbl(23.5125468) | 23.5125468 |