VB.NET2005函數大全
VB.NET 2005 2009-09-21 15:53:16 阅读283 评论0 字号:大中小
一、数学函数
函数 说明
Abs (num) 取绝对值。
Exp (num) 返回以e为底、以num为指数的值,如Exp(2)返回e^2值。
Log (num) 返回参数num的自然对数值,为Double类型,即以e为底的对数。
Hex (num)` 将参数num转换为16进制。
Oct (num) 将参数num转换为8进制
Sign (num) 返回参数的正负符号,若num大于0,则返回值为1;若num等于0,则返回值为0;若num小于0,则返回值为-1。
Sqrt (num) 返回参数平方根为,Double类型。
Atan (num) 反正切函数
Sin (num) 正弦函数
Cos (num) 余弦函数
Tan (num) 正切函数
Rand (num,[int]) 将参数num四舍五入,若要指定四舍五入到哪位小数,可以加上第二个参数int。 如:Round (12. 456 )返回值为12;Round (12 . 4567,3 ) 返回值为12. 457。
Rnd [(nun)] 产生一个小于1,大于或等于0的随机数,类型为Single。
若参数num小于0,那么每次都会返回相同的随机数;若没有提供参数或参数大于0,那么会依序产生下一个随机数,此为默认值;若参数num等于0,那么会返回最近一次产生的随机数。为了每次产生不同的随机数,在使用Rand ()函数之前,最好使用Randomize语句。若要随机产生一个N到M的整数,可利用如下公式:Int (Rand ()*M-N+1)+N。
Pow (x,y) 求x的y次方。
Val (str) 将字符串内的数字转换成Integer或Double类型返回。
Str (num) 将数值类型参数转换成字符串返回。
Fix (num) 参数大于0时,去掉小数部分;参数小于0时,返回大于或等于该参数值。
Int (num) 参数大于0时,去掉小数部分;数小于0时,返回小于或等于该参数值。
二、字符串函数
<一> 字符串转换函数
(1)Lcase (str):将字符串str转换成小写字母。
(2)Ucase (str):将字符串str转换成大写字母。
(3)Asc (St): 取得字符串str的第一个字符ASCII 码。
(4)Chr (int): 以ASCII 码来取得字符内容。 如:chr (65)会返回字符A。
(5)StrReverse (str): 取得字符串str内容反转后的结果。如:StrReverse ("Love")返回值为"evoL"。
<二> 依照指定格式转换字符串函数StrConv ()
语法格式:StrConv (str As String,ConverSion As VbStrConv [,LocaleID As Integer ]) As String
说明:根据参数ConverSion指定的格式将参数str转换完毕的结果返回。参数ConverSion属于Microsoft.VisualBasic.VbStrConv枚举,其成员如下:
VbstrConv枚举成员 说明
VbStrConv.None 不执行转换。
VbStrConv.Nove.LinguisticCasing 使用大小写的语言风格,而不是文件系统(默认值)。
VbStrConv.UpperCase 将字符串转换成大写字母。
VbStrConv.LowerCase 将字符串转换成小字字母。
VbStrConv.ProPerCase 将字符串中每个单字的第一个字母转换成大写。
VbStrConv.Widw* 将字符串中的半角字符转换成全角字符。
VbStrConv.Narrow* 将字符串中的全角字符转换成半角字符。
VbStrConv.KataKana** 将字符串中平假名字符转换成片假名字符。
VbStrConv.HiraGanna** 将字符串中的片假名字符转换成平假名字符。
VbStrConv.SimpLifedChinese* 将繁体汉字转换成简体中文。
VbStrConv.TraditionalChinese 将简体中文转换成繁体汉字。
注:*适用于亚州地区设置;**仅适用于日本。
例如:StrConv ("I AM HAPPY",VbStrConv.LowerCase)返回值为:i am happy。
<三> 字符串搜索、比较、筛选与替换函数
(1)字符串比较比较函数StrComp ()
语法:StrComp (str1 As String , str2 As String [,ampare As Microsoft.VisualBasic.CompareMethod]) As Integer
说明:返回表示str1和str2两个字符串参数比较结果,若str1小于str2,则返回-1;若str1等于str2,返回0;若str1大于str2,若返回1。选择性参数Compare的值有Binary(区分大小写)和Text(不区分大小写)两种,前者为默认值。
(2)筛选字符串数组函数Filter ()
语法:Filter (Source() As {Object | String},match As String [,include As Boolean [,compare As Microsoft.VisualBasic.CompareMethod ]] As String ()
说明:从一维字符串数组Source ()中筛选包含match字符串的子数组。若选择性参数include为True(默认),表示从字符串数组Source ()中筛选包含match字符串的子数组;若选择性参数include为false,表示字符串数组source ()中筛选不包含match字符串的子数组;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。例如:Source ()={"abc","abdfe","ghdf","pqs"},那么filter (Source ,"ab",True,CompareMethod.Binary)会返回{"abc","abdfe"}。
(3)替换字符串函数RePlace ()
语法:RePlace (str As String , find As String , replacement As String [,start As Integer [,count As Integer [,compare As Microsoft.VisualBasic.CompareMethod ]]] As String
说明:将str字符串内的find子字符串替换为replacement子字符串。选择性参数start表示从str字符串的第start个字符开始查找find子字符串,默认为1;选择性count表示做几次替换,默认为-1,表示执行所有可能的替换;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:str="shopping list"那么Relace (str,"o","i")会返回"Shipping list"。
(4)查找字符串函数InStr ()
语法:InStr (start As Integer , str1 As String , str2 As String [,compare As Microsoft.VisualBasic.CompareMethod]) As String
说明:返回str2字符串在str1字符串中第一次出现的位置。若str1为空字符串("")或str2没有出现在str1或start大于str2的长度,就返回0;若str2为空字符串(""),就返回start;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:Instr (3,"Hell Wold",0")返回5。
(5)查找字符串函数Instrrev ()
语法:InStrRev (str1 As String,Str2 As Interger [,start As Integer [,compare As Microsoft.VisualBasic.compareMethod ]]) As Integer
说明:InStrRev ()函数的用途和InsStr ()函数相似,但改从字符串的右边开始检查str2字符串在str1字符中第一次出现的位置不同。如:InStrRev ("Hello Word","0")返回3。
(6)将字符串数组组成单一字符串函数join ()
语法:Jon (Source () As {Object | String} [,delimiter As String]) As String
说明:将字符串数组Source ()内的每个字符串组成单一字符串返回,选择性参数delimter表示每个字符之间的分隔符,默认为空字符串("")。如:Source ()={"Janifer","Peter","Jean","Robort"},那么join (Source)会返回"Janifer Perter Rober"。
(7)将字符串分解成子字符数组函数Split ()
语法:Split (str As String [,delimiter As String [,limit As Integer [,compare As Microsoft.VisualBasic.CompareMethod ]]]) As String
说明:将组成字符串str的每一个字符串放进字符串数组内返回。选择性参数delimiter表示每个子字符串之间的分隔符,默认值为空字符串("");参数limit是要返回的子字符串数目,默认为-1,表示返回所有子字符串;参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:str=" I am Happy.",那么Split (str)会返回字符串数组{"I","am","Happy"}。
<四> 字符串操作数
(1)Len (str):获取字符串长度;也可以测试变量名所存储数据空间的大小。Len (字符串)或Len (变量名)
(2)Space (int):由空格符组成的字符串,返回int个空格。
(3) StrDup (int , char):由指定字符组成的字符串,返回由chr字符所组成部分的字符串,int的类型的onteger,chr为Char或String类型,若为String,则返回由int个该字符串中第一个字符所组成的字符串。如:StrDup (3,"I am Happy.")返回"III"。
(4)Left (str , int):从字符串str左边返回int个字符。
(5)Right (str , int):从字符串str右边返回int个字符。
(6)Mid (str , int1 , int2):从字符串str的第int1个字符开始返回int2个字符,int2可省略,若int2省略则从int1个字符开始截取到最后。如:Mind ("Happy Birthday",3,5)返回"ppy B"。
(7)LTirm (str):删除左边空格。
(8)RTim (str):删除右边的空格。
(9)Trim (str):删除两边的空格。
三、日期时间函数
<一> 获取/设置目前日期时间函数
(1)Now ():返回系统目前的日期和时间。如:2007-3-29 早上10:38:22
(2)Today ():返回或设置系统目前的日期。
(3)TimeOfDay ():返回或设置系统目前的时间。
(4)DataString ():以"yyy-mm-dd"格式返回或设置系统目前时间。
(5)Timer ():以Double类型返回自午夜到今所经过的秒数和毫秒数,秒数是返回值的整数部分,毫秒数则是小数部分。
<二> 返回日期时间函数
(1)合并年月日成日期函数 DateSerial ()
格式:DateSerial (year As Integer , month As Integer , day As Integer ) As DateTime
说明:将参数所指定的年月日合并成日期返回,参数year的值须是介于1~9999的整数,若是介于0~99的整数,将被解释为1930~2029,若是小于1的整数,将自目前年底中减去;参数day的值须是介于1~31的整数,若是小于1的整数,将自目前日期中减去。例如:DateSerial (99,10,22) 会返回#1999-10-22#;DateSerial (99,10,22-23)会返回#1999-9-29";DateSerial (99,10,22+3)会返回#1999-10-25#。
(2)将字符串转换成日期函数 DateValue ()
格式:DateValue (str As String) As Date Time
说明:将参数转换成日期返回。参数str是表示由1年1月00:00:00到9999年12月31日23:59:59之间日期/时间值的字符串表达式。例如:DateValue ("Februay , 12 , 1972")会返回#1972-2-12#。
(3)合并时分秒成时间函数TimeSerial ()
格式:TimeSerial Chour As Integer , minute As Integer , Second As Integer ) As DateTime
说明:将参数所指定的时分秒合并成时间返回。参数hour的值必须是介于0~23的整数,若是小于1的整数,将自目前小时数中减去;参数minute和参数second的值须是介于0~59的整数,若是小于1的整数,将分别自目前分钟数与秒数中减去,例如:TimeSerial (12-6,-15,0)会返回上午06:45:00
(4)将字符串转换成时间函数TimeValue ()
格式:TimeValue (str As String) As DateTime
说明:将参数转换成时间返回。参数str是表示由1年1月1日00:00:00到9999年12月31日23:59:59之日期/时间值的字符串表达式。例如:TimeValue ("4:35:17 pm") 会返回#下午04:35:17#。
(5)获取月份名称函数MonthName ()
格式:MonthName (month As Integer [ , abbreviate As Boolean]) As String
说明:根据参数month的值返回月份的名称,例如:MonthName (12)会返回"十二月"字符串,参数month的类型为Integer;选择性参数abbreViate类型为Boolean,用来表示月份的名称能否被缩写。
(6)获取星期几名称函数WeekdayName ()
格式:WeekdayName (weekday As Integer [, abbreviate As Boolean [, dayofweek As FirstDayOfWeek ]]) AS String
说明:根据参数weekday的值返回星期几的名称,默认情况下,1,2~7会分别返回"星期日"、"星期一"~"星期六";abbreviate用来表示星期几的名称能否被缩写,而选择性参数dayofweek的类型为FirstDayOfWeek枚举,用来表示一星期的第几天,默认为FirstDayOfWeek.System (0),即采取系统设置中所指定的每周第一天,通常是星期日。如下表:
FirstDayOfWeek枚举成员 值 说明
FirstDayOfWeek.System 0 系统设置指定每周的第一天(默认值)
FirstDayOfWeek.Sunday 1 星期日
FirstDayOfWeek.Monday 2 星期一
FirstDayOfWeek.Tuesday 3 星期二
FirstDayOfWeek.Webnesday 4 星期三
FirstDayOfWeek.Thursday 5 星期四
FirstDayOfWeek.Friday 6 星期五
FirstDayOfWeek.Saturday 7 星期六
<三> 计算日期时间函数
(1)日期时间增减函数DateAdd ()
格式:DateAdd (interval As DateInerVal , number As Double , dt As DateTime ) As DateTime
说明:将参数dt指定的日期加上number个intval。例如:DateAdd ("m", 1, #11/25/1990#)会返回#1990/12/25#,其中interval为"m",表示月份,number为"1",dt为指定的日期,这个叙述的意义是将dt指定的日期加上1个月,DateAdd ("q", 2, #2001/1/31#)会返回#2001/7/31#,也就是#2001/1/31#加上两个季。Interval属于DateInterVal枚举,成员如下表:
成员 值 说明 成员 值 说明
DateInterVal.Year yyyy 年 DateInterVal.Quarte q 季
DateInterVal.Month m 月 DateInterVal.DayOfYear y 一年中的第几天
DateInterVal.Day d 日 DateInterVal.Hour h 小时
DateInterVal.WeekOfYear ww 一年中的第几周 DateInterVal.DayOfWeek 一周中的星期几
DateInterVal.Minute n 分钟 DateInterVal.Second s 秒数
(2)日期时间差函数DateDiff ()
格式:DateDiff (interval As DateInterVal, dt1 As DateTime, dt2 As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]] As Long
说明:返回dat1和dat2 两个日期之间的间隔数,间隔单位为参数interval,例如:DateDiff ("m",#12/15/1990#, ##1/10/1990# )会返回-11,即两个日期相间隔11个月(第一个参数指定间隔单位为月;DateDiff ("d", #12/5/90# , #12/15/90# )会返回10,即两个日期间隔10天(第一个参数指定间隔单位为天)。
参数interval属于DateInterVal枚举;选择性参数dayofweek可以省略,用来指定哪一天为一周的第一天,属于FirstDateOfWeek枚举,其值有FirstDayWeek.System (0), FirstDayWeek.Sunday (1), FirstDayWeek.Monday (2), FirstDayWeek.Tuesday (3), FirstDayWeek.Wednesday (4), FirstDayWeek.Saturday (5), FirstDayWeek.Friday (6), FirstDayWeek.Satuday (7)等8种;选择性参数weekofyear可以省略,用来指定哪一周为一年的第一周,属于FirstWeekOfYear枚举,其值有FirstWeelkOfYear.System (0)系统默认值、FirstWeelkOfYear.Jan (1)一月一日当周、FirstWeelkOfYear.FirstFourDays (2)新年度至少有4天在该周、FirstWeelkOfYear.FirstFullWeek (3)新年度的第一个完整星期等4种;例如:DateDiff ("ww", dat1, 1)会返回两个日期之间有几个星期日。
(3)获取日期时间的指定部份函数DatePart ()
格式:DatePart (interval As DateInterval, dt As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]])
说明:返回特定日期指定部分。例如DatePart ("y", #9/11/92#)会返回天数255,因为9月11日为1992年的第255天;DatePart ("w", #8/22/2000)会返回3,表示为星期二。DatePart ()函数的参数意义同DateDiff ()函数。
四、格式化函数
<一> 日期时间格式化函数
语法:FormatDateTime (exp As DateTime [, namedformat As DateFormat ]) As String
说明:依照参数namedformat指定的格式将参数exp的日期格式化,选择性参数namedformat属于DateFormat枚举,成员如下:
(1)DateFormat.GeneralDate:显示日期和(或)时间。若有日期部分,则会显示为简短日期;若有时间部分,则会显示为完整时间;若两者皆有,则会全显示。
(2)DateFormat.LongDate:使用计算机的区域选项中所指定的完整日期格式显示日期。
(3)DateFormat.ShortDate:使用计算机的区域选项中所指定的简短日期格式显示日期。
(4)DateFormat.LongTime:使用计算机的区域选项中所指定的时间格式来显示日期。
(5)DateFormat.ShortTime:使用24小时制(hh : mm)来显示时间。
如:FormatDateTime (#2/14/2002#, DateFormat.LongDate)会返回"2002年2月14日";
FormatDateTime (#2/14/2002#, DateFormat.ShortDate)会返回"2002/2/14"。
<二> 货币值格式化函数FormatCurrency ()
语法:FormatCurrency (exp As Object [, numdigitsafterdecimal As Integer [, leadingdigit As Tristate [,negparen As Tristate [,groupDigits As TriState ]]]]) As Strong
说明:将参数exp设置成指定的货币格式,此货币值使用控制面板中区域选项所定义货币符。选择性参数numdigitsafterdecimal表示要显示小数点后面几们数,-1为采取系统默认值;选择性参数leadingdigit表示是否要在小于1的值前面加上0,属于Tristate枚举,成员如下表所示;选择性参数negparen表示是否要将负数用括号起来,属于Tristate枚举;选择性参数groupdigits表示加上分隔符来组合数字,属于Tristate枚举。例如: FormatCuurnct (12345.789, 2)会返回NT$123,456.79
Tristate枚举成员 值
Tristate.True True
Tristate.False False
Tristate.UseDefault 区域选项的设置
<三> 数值格式化函数FormatNumber ()
语法:FormatNumber (exp As Object [, numdigitsafterdecinnal As Integer [,leadingdigit As Tristate [,negparen As Tristate [,Groupdigits As Tristate ]]]] As String
说明:将参数exp设置成指定的数值格式。选择参数同上(即同货币值函数参数)
<四> 百分比格式化函数FormatPerCent ()
语法:FormatPerCent (exp As Object [, numdigitsafterdecinnal As Integer [,leadingdigit As Tristate [,negparen As Tristate [,Groupdigits As Tristate ]]]] As String
说明:将参数exp设置成指定的百分比格式(乘以100)选择性参数同上。
<五> 格式化函数Format ()
语法:Format (exp As Object [, style As String]) As String
说明:根据style指定格式将exp格式化。选择性参数style为任何预先定义的格式化表达式或用户自定义的格式化表列,如下两个表:
预定义的格式 说明
General Date或G 显示日期/时间,例如Format (Now ,"General Date")会返回系统目前的日期/时间,好比是2002/1/31 下午12: 26: 03。若没有分数部分,则只会显示日期;若没有整数部分,则只会显示时间。
Long Date或D 以系统的完整日期格式显示日期。如Format (Now, "Long Date")为: 2006年1月28日
Medium Date 以应用程序版本的中等日期格式显示。如Format (Now, "Medium Date")返回2006年1月28日
Short Date或 d 以系统的短日期格式显示时间。如 Format (Now, "Short Date")返回2006/1/28
Long Time或T 以系统的完整时间格式显示时间,如Format (Now, "Long Time")返回12:00:00
Medium Time 以时分及上午下午显示12小时时间格式的时间。
Short Time或T 以24小时的时间格式显示时间。
f 根据控件面板的区域选项设置的格式来显示完整日期及简短时间。
F 根据控件面板的区域选项设置的格式来显示完整日期及完整时间
g 根据控件面板的区域选项设置的格式来显示短日期及短时间。
M,m 显示几月几日。
R,r 根据格林威治标准时间(GMT)来格式化日期及时间。
s 根据可排序的索引来格式化日期及时间。
u 根据GMT可排序的索引来格式化日期及时间。
U 根据GMT以完整日期及完整时间来格式化时间。
y 根据年份及月份来格式化日期。
GeneralNumber 显示的数字没有千分位符号。如Format (12345.6789, "GeneralNumber")返回: 12345.6789。
Currency 显示的数值有千分位符号,小数点右边会显示两位。如Format (12345.678, "Currency")返回: 12,345.68。
Fixed 小数点左边至少一位数,右边两位数。例如Format (12345.678, "Fixed")返回1234567.89%。
Standard 显示的数值有千分位号,小数点左边至少有一位数,右边有两位数。如Format (12345.6789, "Standard")返回12,345.68。
Percent: 以百分比格式显示,小数点右边有两位数,例如 Format (12345.6789, "Percent")返回1234567.89%。
Scientific 使用标准科学符号。如 format (12345.6789, "Scientific")返回1.23E+04。
D或d 将数值显示为含有小数点格式的数值(十进制),只有整数数类型才支持此项。如Format (4096, "D")返回4096
X或x 将数值显示为含有十六进制的数值,只有整数数值类型才支持此项。如 Format (4096, "X")返回: 1000。
Yes/No 或数字为0,显示NO,否则显示YES。如 Format (12345.6789, "Yes/NO")返回YES。
True/False 若数字为0,显示Flase,否则显示Yes。如 Format (12345.6789, "True/False"返回True.
On/Off 若数字为0,显示Off,否则显示On
用户定义的数值格式化字符 说明
# 和 0 # 或0表示一个数字,# 或0的个数决定了数值显示的长度。如果显示的数值的长度小于 # 或 0 的长度, 对于# 符号:无论是整数部分还是小数部分都不补零;对于0符号:整数在左端补零,小数在右端补零。如果显示的数值的长度大于 # 或 0的长度,对于 # 符号和 0 符号:整数部分都按数值的实际位数输出,小数部分都只显示到有有#号的位置,最后一位四舍五入。
. . 用于显示小数点。小数点与格式符 # 和 0 结合使用,用于指定小数的位数,多余的位数按四舍五入处理。如Format(123.456, "0000.00")结果为:0123.46
, ,(逗号)用来在数字中插入千分号。即从数值的小数点靠近左边的第一位开始,每3位插入一位千分号。逗号可放在小数点左边的任何位置。如
Format(1234567.893,"####, ##".##")结果为1,234,567.89。
% % 用于输出百分号。把数值乘以100在后面加上百分号。通常放在格式字符串的后面用来输出百分号。如Format(12.456, "###.##%") 结果为:1245.6
$ $放在格式字符串起始位置,用于美元符号输出,可在显示的数值前面加$符号。如Format(1234.567,"$###.##")结果为:$1234.57
+或- +或-通常放在格式字符串的前面。用来输出正号或负号。如Format(3456.012,"+###.##")结果为+3456.01;Format(3456.012,"-###.##")
E+或E- E+或E- 用于数值的指数形式。如 Format(3456.012,"#.###E+")结果为:3.456E+03
Format(0.01234, "#.###E-00")结果为:1.23E-02。
:或 / :为时间分隔符;/ 为日期分隔符。
"" 将双引号""内的字符串显示出来。
M、MM、MMM、MMMM M是以没有零开头地显示(1~12);MM以零开头的数字来显示(01!12);MMM是以简写表示月;MMMM是以命名表示月。如:Format(#1/13/2006#, "MMMM")返回"一月"
d、d d、d d d、d d d d d以没有零开头的数字来显示;d d是以有零开头的数字来显示;d d d是以简写来表示天;d d d d是以命名来表示天。
gg 显示纪年。例如:Format(#1/32006#,"gg")返回"公元"
H、HH、h、hh、m、mm、s、ss H是以24小时制,没有零开头的数字将小时显示成数字(0~23);HH是以24小时制,有零开头的数字来显示小(0~23);h是以12小时制,没有零开头的数字将小时显示成数字;hh是以12小时制,有零开头的数字来显示小时;m是以没有零开头的数字来显示分(0~59);mm是以有零开头的数字来显示分(00~59);s是以没有零开头的数字来显示秒(0~59);ss是以有零开头的数字来显示秒(00~59)。如Format(#02:31:50 pm#, "hh:mm:ss")返回02:31:50;Format(#02:31:50 pm#, "HH:mm:ss") 返回14:31:50 。
f f显示秒数的小数部分。如f f会显示至百分之一秒; f f f会显示至万分之一秒,最多可以使用7个f符号。
t 使用12小时制,同时在正午之前的任何小时加上大写A,在正午与11:59 pm之前的任何小时加上pm。
t t 使用12小时制,同时在正午之前任何小时加上大写Am;在下午与11:59 pm之前的任何小时加上pm。
y、y y、y y y、y y y y y是以一位数来表示年(0~9);y y是以两位数来表示(00~99);y y y和y y y y是以四位数来表示年。如Format(#1/3/2006#, "yyyy-MMMM-dd")返回2006-一月-03
:2、22、222 :2是显示时区差,而且还需要加上前缀零(如-8);22是显示时区时差,而且要加上前缀零(如-08);222是显示完整的时区差(如-08:00)
:/ % :是时间分割符;/是日期分割符;%是用来指示应将后面的字符当作一字母格式读取,而不管是否还跟着任何字母。
五、转换数据类型函数
这些函数的参数均为字符串表达式或数值表达式。例如:Cstr(#1/1/2002#)会返回"2002/1/1",因为这个函数的功能就是将参数转换成String类型并返回来。要注意的是,若参数超出类型转换函数的类型所允许的范围或参数的格式难以辨识,将产生错误。转换函数如下表:
转换函数 返回值 说明
CBool (exp) Boolean 将参数转换成Boolean类型并返回来
CByte (exp) Byte 将参数转换为Byte类型,参数须为0~255,小数部分四舍五入。
CChar (exp) Char 将参数转换成Date类型,参数须0~65536。
CDate (exp) Date 将参数转换成Date类型,参数须为有效日期时间。
CDbl (exp) Double 将参数转换成Double类型。
CDec (exp) Decimal 将参数转换成Decimal类型。
CInt (exp) Integer 将参数转换成Integer类型,小数部分四舍五入。
CLng Long 将参数转换成Long类型,小数部分四舍五入。
CObj (exp) Object 将参数转换成Object类型,参数须为有效的表达式
CShort (exp) Short 将参数转换成Short类型,小数部分四舍五入。
CSng (exp) Single 将参数转换成Single类型。
CStr (exp) String 将参数转换成String类型,要注意的是若参数为Boolean类型,则返回的字符串为"True"或"False";若为Date类型,返回短日期格式显示。
CType 这个函数的调用形式为:Type (expression, typename),也就是将第一个参数转换为第二个参数所指定类型后返回。
六、 获取数据类型函数
语法:TypeName (VarName As Object ) As String
说明:TypeName ()函数可能用来获取参数VarName的数据类型,返回值为字符串。
七、检查数据类型函数
函数 说明
IsNothing (Obj) 检查参数是否已经初始化,若对象变量没有指向任何真实对象,返回True,否则返回Flase。
IsDbNull (Obj) 检查参数是否包含任何有效数据,是的话返回True,否则返回False。
IsError (Obj) 检查参数是否为错误代码,是的话返回True,否则返回False。
IsDate (Obj) 检查参数是否为Date类型或可以转换成为Date类型的字符串,是的话返回True,否则返回False。
IsNumeric (Obj) 检查参数是否为数值类型(Byte、Short、Integer、Single、Double、Decimal),是的话返回True,否则返回False。
IsReference (Obj) 检查参数是否为Object类型,是的话返回True,否则返回False。
IsArray (Obj) 检查参数是否为数组,是的话返回True,否则返回False。
函数 说明
Abs (num) 取绝对值。
Exp (num) 返回以e为底、以num为指数的值,如Exp(2)返回e^2值。
Log (num) 返回参数num的自然对数值,为Double类型,即以e为底的对数。
Hex (num)` 将参数num转换为16进制。
Oct (num) 将参数num转换为8进制
Sign (num) 返回参数的正负符号,若num大于0,则返回值为1;若num等于0,则返回值为0;若num小于0,则返回值为-1。
Sqrt (num) 返回参数平方根为,Double类型。
Atan (num) 反正切函数
Sin (num) 正弦函数
Cos (num) 余弦函数
Tan (num) 正切函数
Rand (num,[int]) 将参数num四舍五入,若要指定四舍五入到哪位小数,可以加上第二个参数int。 如:Round (12. 456 )返回值为12;Round (12 . 4567,3 ) 返回值为12. 457。
Rnd [(nun)] 产生一个小于1,大于或等于0的随机数,类型为Single。
若参数num小于0,那么每次都会返回相同的随机数;若没有提供参数或参数大于0,那么会依序产生下一个随机数,此为默认值;若参数num等于0,那么会返回最近一次产生的随机数。为了每次产生不同的随机数,在使用Rand ()函数之前,最好使用Randomize语句。若要随机产生一个N到M的整数,可利用如下公式:Int (Rand ()*M-N+1)+N。
Pow (x,y) 求x的y次方。
Val (str) 将字符串内的数字转换成Integer或Double类型返回。
Str (num) 将数值类型参数转换成字符串返回。
Fix (num) 参数大于0时,去掉小数部分;参数小于0时,返回大于或等于该参数值。
Int (num) 参数大于0时,去掉小数部分;数小于0时,返回小于或等于该参数值。
二、字符串函数
<一> 字符串转换函数
(1)Lcase (str):将字符串str转换成小写字母。
(2)Ucase (str):将字符串str转换成大写字母。
(3)Asc (St): 取得字符串str的第一个字符ASCII 码。
(4)Chr (int): 以ASCII 码来取得字符内容。 如:chr (65)会返回字符A。
(5)StrReverse (str): 取得字符串str内容反转后的结果。如:StrReverse ("Love")返回值为"evoL"。
<二> 依照指定格式转换字符串函数StrConv ()
语法格式:StrConv (str As String,ConverSion As VbStrConv [,LocaleID As Integer ]) As String
说明:根据参数ConverSion指定的格式将参数str转换完毕的结果返回。参数ConverSion属于Microsoft.VisualBasic.VbStrConv枚举,其成员如下:
VbstrConv枚举成员 说明
VbStrConv.None 不执行转换。
VbStrConv.Nove.LinguisticCasing 使用大小写的语言风格,而不是文件系统(默认值)。
VbStrConv.UpperCase 将字符串转换成大写字母。
VbStrConv.LowerCase 将字符串转换成小字字母。
VbStrConv.ProPerCase 将字符串中每个单字的第一个字母转换成大写。
VbStrConv.Widw* 将字符串中的半角字符转换成全角字符。
VbStrConv.Narrow* 将字符串中的全角字符转换成半角字符。
VbStrConv.KataKana** 将字符串中平假名字符转换成片假名字符。
VbStrConv.HiraGanna** 将字符串中的片假名字符转换成平假名字符。
VbStrConv.SimpLifedChinese* 将繁体汉字转换成简体中文。
VbStrConv.TraditionalChinese 将简体中文转换成繁体汉字。
注:*适用于亚州地区设置;**仅适用于日本。
例如:StrConv ("I AM HAPPY",VbStrConv.LowerCase)返回值为:i am happy。
<三> 字符串搜索、比较、筛选与替换函数
(1)字符串比较比较函数StrComp ()
语法:StrComp (str1 As String , str2 As String [,ampare As Microsoft.VisualBasic.CompareMethod]) As Integer
说明:返回表示str1和str2两个字符串参数比较结果,若str1小于str2,则返回-1;若str1等于str2,返回0;若str1大于str2,若返回1。选择性参数Compare的值有Binary(区分大小写)和Text(不区分大小写)两种,前者为默认值。
(2)筛选字符串数组函数Filter ()
语法:Filter (Source() As {Object | String},match As String [,include As Boolean [,compare As Microsoft.VisualBasic.CompareMethod ]] As String ()
说明:从一维字符串数组Source ()中筛选包含match字符串的子数组。若选择性参数include为True(默认),表示从字符串数组Source ()中筛选包含match字符串的子数组;若选择性参数include为false,表示字符串数组source ()中筛选不包含match字符串的子数组;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。例如:Source ()={"abc","abdfe","ghdf","pqs"},那么filter (Source ,"ab",True,CompareMethod.Binary)会返回{"abc","abdfe"}。
(3)替换字符串函数RePlace ()
语法:RePlace (str As String , find As String , replacement As String [,start As Integer [,count As Integer [,compare As Microsoft.VisualBasic.CompareMethod ]]] As String
说明:将str字符串内的find子字符串替换为replacement子字符串。选择性参数start表示从str字符串的第start个字符开始查找find子字符串,默认为1;选择性count表示做几次替换,默认为-1,表示执行所有可能的替换;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:str="shopping list"那么Relace (str,"o","i")会返回"Shipping list"。
(4)查找字符串函数InStr ()
语法:InStr (start As Integer , str1 As String , str2 As String [,compare As Microsoft.VisualBasic.CompareMethod]) As String
说明:返回str2字符串在str1字符串中第一次出现的位置。若str1为空字符串("")或str2没有出现在str1或start大于str2的长度,就返回0;若str2为空字符串(""),就返回start;选择性参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:Instr (3,"Hell Wold",0")返回5。
(5)查找字符串函数Instrrev ()
语法:InStrRev (str1 As String,Str2 As Interger [,start As Integer [,compare As Microsoft.VisualBasic.compareMethod ]]) As Integer
说明:InStrRev ()函数的用途和InsStr ()函数相似,但改从字符串的右边开始检查str2字符串在str1字符中第一次出现的位置不同。如:InStrRev ("Hello Word","0")返回3。
(6)将字符串数组组成单一字符串函数join ()
语法:Jon (Source () As {Object | String} [,delimiter As String]) As String
说明:将字符串数组Source ()内的每个字符串组成单一字符串返回,选择性参数delimter表示每个字符之间的分隔符,默认为空字符串("")。如:Source ()={"Janifer","Peter","Jean","Robort"},那么join (Source)会返回"Janifer Perter Rober"。
(7)将字符串分解成子字符数组函数Split ()
语法:Split (str As String [,delimiter As String [,limit As Integer [,compare As Microsoft.VisualBasic.CompareMethod ]]]) As String
说明:将组成字符串str的每一个字符串放进字符串数组内返回。选择性参数delimiter表示每个子字符串之间的分隔符,默认值为空字符串("");参数limit是要返回的子字符串数目,默认为-1,表示返回所有子字符串;参数compare的值有Binary(区分大小定)和Text(不区分大小字)两种,前者为默认值,决定了字符串的比较方式。如:str=" I am Happy.",那么Split (str)会返回字符串数组{"I","am","Happy"}。
<四> 字符串操作数
(1)Len (str):获取字符串长度;也可以测试变量名所存储数据空间的大小。Len (字符串)或Len (变量名)
(2)Space (int):由空格符组成的字符串,返回int个空格。
(3) StrDup (int , char):由指定字符组成的字符串,返回由chr字符所组成部分的字符串,int的类型的onteger,chr为Char或String类型,若为String,则返回由int个该字符串中第一个字符所组成的字符串。如:StrDup (3,"I am Happy.")返回"III"。
(4)Left (str , int):从字符串str左边返回int个字符。
(5)Right (str , int):从字符串str右边返回int个字符。
(6)Mid (str , int1 , int2):从字符串str的第int1个字符开始返回int2个字符,int2可省略,若int2省略则从int1个字符开始截取到最后。如:Mind ("Happy Birthday",3,5)返回"ppy B"。
(7)LTirm (str):删除左边空格。
(8)RTim (str):删除右边的空格。
(9)Trim (str):删除两边的空格。
三、日期时间函数
<一> 获取/设置目前日期时间函数
(1)Now ():返回系统目前的日期和时间。如:2007-3-29 早上10:38:22
(2)Today ():返回或设置系统目前的日期。
(3)TimeOfDay ():返回或设置系统目前的时间。
(4)DataString ():以"yyy-mm-dd"格式返回或设置系统目前时间。
(5)Timer ():以Double类型返回自午夜到今所经过的秒数和毫秒数,秒数是返回值的整数部分,毫秒数则是小数部分。
<二> 返回日期时间函数
(1)合并年月日成日期函数 DateSerial ()
格式:DateSerial (year As Integer , month As Integer , day As Integer ) As DateTime
说明:将参数所指定的年月日合并成日期返回,参数year的值须是介于1~9999的整数,若是介于0~99的整数,将被解释为1930~2029,若是小于1的整数,将自目前年底中减去;参数day的值须是介于1~31的整数,若是小于1的整数,将自目前日期中减去。例如:DateSerial (99,10,22) 会返回#1999-10-22#;DateSerial (99,10,22-23)会返回#1999-9-29";DateSerial (99,10,22+3)会返回#1999-10-25#。
(2)将字符串转换成日期函数 DateValue ()
格式:DateValue (str As String) As Date Time
说明:将参数转换成日期返回。参数str是表示由1年1月00:00:00到9999年12月31日23:59:59之间日期/时间值的字符串表达式。例如:DateValue ("Februay , 12 , 1972")会返回#1972-2-12#。
(3)合并时分秒成时间函数TimeSerial ()
格式:TimeSerial Chour As Integer , minute As Integer , Second As Integer ) As DateTime
说明:将参数所指定的时分秒合并成时间返回。参数hour的值必须是介于0~23的整数,若是小于1的整数,将自目前小时数中减去;参数minute和参数second的值须是介于0~59的整数,若是小于1的整数,将分别自目前分钟数与秒数中减去,例如:TimeSerial (12-6,-15,0)会返回上午06:45:00
(4)将字符串转换成时间函数TimeValue ()
格式:TimeValue (str As String) As DateTime
说明:将参数转换成时间返回。参数str是表示由1年1月1日00:00:00到9999年12月31日23:59:59之日期/时间值的字符串表达式。例如:TimeValue ("4:35:17 pm") 会返回#下午04:35:17#。
(5)获取月份名称函数MonthName ()
格式:MonthName (month As Integer [ , abbreviate As Boolean]) As String
说明:根据参数month的值返回月份的名称,例如:MonthName (12)会返回"十二月"字符串,参数month的类型为Integer;选择性参数abbreViate类型为Boolean,用来表示月份的名称能否被缩写。
(6)获取星期几名称函数WeekdayName ()
格式:WeekdayName (weekday As Integer [, abbreviate As Boolean [, dayofweek As FirstDayOfWeek ]]) AS String
说明:根据参数weekday的值返回星期几的名称,默认情况下,1,2~7会分别返回"星期日"、"星期一"~"星期六";abbreviate用来表示星期几的名称能否被缩写,而选择性参数dayofweek的类型为FirstDayOfWeek枚举,用来表示一星期的第几天,默认为FirstDayOfWeek.System (0),即采取系统设置中所指定的每周第一天,通常是星期日。如下表:
FirstDayOfWeek枚举成员 值 说明
FirstDayOfWeek.System 0 系统设置指定每周的第一天(默认值)
FirstDayOfWeek.Sunday 1 星期日
FirstDayOfWeek.Monday 2 星期一
FirstDayOfWeek.Tuesday 3 星期二
FirstDayOfWeek.Webnesday 4 星期三
FirstDayOfWeek.Thursday 5 星期四
FirstDayOfWeek.Friday 6 星期五
FirstDayOfWeek.Saturday 7 星期六
<三> 计算日期时间函数
(1)日期时间增减函数DateAdd ()
格式:DateAdd (interval As DateInerVal , number As Double , dt As DateTime ) As DateTime
说明:将参数dt指定的日期加上number个intval。例如:DateAdd ("m", 1, #11/25/1990#)会返回#1990/12/25#,其中interval为"m",表示月份,number为"1",dt为指定的日期,这个叙述的意义是将dt指定的日期加上1个月,DateAdd ("q", 2, #2001/1/31#)会返回#2001/7/31#,也就是#2001/1/31#加上两个季。Interval属于DateInterVal枚举,成员如下表:
成员 值 说明 成员 值 说明
DateInterVal.Year yyyy 年 DateInterVal.Quarte q 季
DateInterVal.Month m 月 DateInterVal.DayOfYear y 一年中的第几天
DateInterVal.Day d 日 DateInterVal.Hour h 小时
DateInterVal.WeekOfYear ww 一年中的第几周 DateInterVal.DayOfWeek 一周中的星期几
DateInterVal.Minute n 分钟 DateInterVal.Second s 秒数
(2)日期时间差函数DateDiff ()
格式:DateDiff (interval As DateInterVal, dt1 As DateTime, dt2 As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]] As Long
说明:返回dat1和dat2 两个日期之间的间隔数,间隔单位为参数interval,例如:DateDiff ("m",#12/15/1990#, ##1/10/1990# )会返回-11,即两个日期相间隔11个月(第一个参数指定间隔单位为月;DateDiff ("d", #12/5/90# , #12/15/90# )会返回10,即两个日期间隔10天(第一个参数指定间隔单位为天)。
参数interval属于DateInterVal枚举;选择性参数dayofweek可以省略,用来指定哪一天为一周的第一天,属于FirstDateOfWeek枚举,其值有FirstDayWeek.System (0), FirstDayWeek.Sunday (1), FirstDayWeek.Monday (2), FirstDayWeek.Tuesday (3), FirstDayWeek.Wednesday (4), FirstDayWeek.Saturday (5), FirstDayWeek.Friday (6), FirstDayWeek.Satuday (7)等8种;选择性参数weekofyear可以省略,用来指定哪一周为一年的第一周,属于FirstWeekOfYear枚举,其值有FirstWeelkOfYear.System (0)系统默认值、FirstWeelkOfYear.Jan (1)一月一日当周、FirstWeelkOfYear.FirstFourDays (2)新年度至少有4天在该周、FirstWeelkOfYear.FirstFullWeek (3)新年度的第一个完整星期等4种;例如:DateDiff ("ww", dat1, 1)会返回两个日期之间有几个星期日。
(3)获取日期时间的指定部份函数DatePart ()
格式:DatePart (interval As DateInterval, dt As DateTime [, dayofweek As FirstDayOfWeek [, weekofyear As FirstWeekOfYear ]])
说明:返回特定日期指定部分。例如DatePart ("y", #9/11/92#)会返回天数255,因为9月11日为1992年的第255天;DatePart ("w", #8/22/2000)会返回3,表示为星期二。DatePart ()函数的参数意义同DateDiff ()函数。
四、格式化函数
<一> 日期时间格式化函数
语法:FormatDateTime (exp As DateTime [, namedformat As DateFormat ]) As String
说明:依照参数namedformat指定的格式将参数exp的日期格式化,选择性参数namedformat属于DateFormat枚举,成员如下:
(1)DateFormat.GeneralDate:显示日期和(或)时间。若有日期部分,则会显示为简短日期;若有时间部分,则会显示为完整时间;若两者皆有,则会全显示。
(2)DateFormat.LongDate:使用计算机的区域选项中所指定的完整日期格式显示日期。
(3)DateFormat.ShortDate:使用计算机的区域选项中所指定的简短日期格式显示日期。
(4)DateFormat.LongTime:使用计算机的区域选项中所指定的时间格式来显示日期。
(5)DateFormat.ShortTime:使用24小时制(hh : mm)来显示时间。
如:FormatDateTime (#2/14/2002#, DateFormat.LongDate)会返回"2002年2月14日";
FormatDateTime (#2/14/2002#, DateFormat.ShortDate)会返回"2002/2/14"。
<二> 货币值格式化函数FormatCurrency ()
语法:FormatCurrency (exp As Object [, numdigitsafterdecimal As Integer [, leadingdigit As Tristate [,negparen As Tristate [,groupDigits As TriState ]]]]) As Strong
说明:将参数exp设置成指定的货币格式,此货币值使用控制面板中区域选项所定义货币符。选择性参数numdigitsafterdecimal表示要显示小数点后面几们数,-1为采取系统默认值;选择性参数leadingdigit表示是否要在小于1的值前面加上0,属于Tristate枚举,成员如下表所示;选择性参数negparen表示是否要将负数用括号起来,属于Tristate枚举;选择性参数groupdigits表示加上分隔符来组合数字,属于Tristate枚举。例如: FormatCuurnct (12345.789, 2)会返回NT$123,456.79
Tristate枚举成员 值
Tristate.True True
Tristate.False False
Tristate.UseDefault 区域选项的设置
<三> 数值格式化函数FormatNumber ()
语法:FormatNumber (exp As Object [, numdigitsafterdecinnal As Integer [,leadingdigit As Tristate [,negparen As Tristate [,Groupdigits As Tristate ]]]] As String
说明:将参数exp设置成指定的数值格式。选择参数同上(即同货币值函数参数)
<四> 百分比格式化函数FormatPerCent ()
语法:FormatPerCent (exp As Object [, numdigitsafterdecinnal As Integer [,leadingdigit As Tristate [,negparen As Tristate [,Groupdigits As Tristate ]]]] As String
说明:将参数exp设置成指定的百分比格式(乘以100)选择性参数同上。
<五> 格式化函数Format ()
语法:Format (exp As Object [, style As String]) As String
说明:根据style指定格式将exp格式化。选择性参数style为任何预先定义的格式化表达式或用户自定义的格式化表列,如下两个表:
预定义的格式 说明
General Date或G 显示日期/时间,例如Format (Now ,"General Date")会返回系统目前的日期/时间,好比是2002/1/31 下午12: 26: 03。若没有分数部分,则只会显示日期;若没有整数部分,则只会显示时间。
Long Date或D 以系统的完整日期格式显示日期。如Format (Now, "Long Date")为: 2006年1月28日
Medium Date 以应用程序版本的中等日期格式显示。如Format (Now, "Medium Date")返回2006年1月28日
Short Date或 d 以系统的短日期格式显示时间。如 Format (Now, "Short Date")返回2006/1/28
Long Time或T 以系统的完整时间格式显示时间,如Format (Now, "Long Time")返回12:00:00
Medium Time 以时分及上午下午显示12小时时间格式的时间。
Short Time或T 以24小时的时间格式显示时间。
f 根据控件面板的区域选项设置的格式来显示完整日期及简短时间。
F 根据控件面板的区域选项设置的格式来显示完整日期及完整时间
g 根据控件面板的区域选项设置的格式来显示短日期及短时间。
M,m 显示几月几日。
R,r 根据格林威治标准时间(GMT)来格式化日期及时间。
s 根据可排序的索引来格式化日期及时间。
u 根据GMT可排序的索引来格式化日期及时间。
U 根据GMT以完整日期及完整时间来格式化时间。
y 根据年份及月份来格式化日期。
GeneralNumber 显示的数字没有千分位符号。如Format (12345.6789, "GeneralNumber")返回: 12345.6789。
Currency 显示的数值有千分位符号,小数点右边会显示两位。如Format (12345.678, "Currency")返回: 12,345.68。
Fixed 小数点左边至少一位数,右边两位数。例如Format (12345.678, "Fixed")返回1234567.89%。
Standard 显示的数值有千分位号,小数点左边至少有一位数,右边有两位数。如Format (12345.6789, "Standard")返回12,345.68。
Percent: 以百分比格式显示,小数点右边有两位数,例如 Format (12345.6789, "Percent")返回1234567.89%。
Scientific 使用标准科学符号。如 format (12345.6789, "Scientific")返回1.23E+04。
D或d 将数值显示为含有小数点格式的数值(十进制),只有整数数类型才支持此项。如Format (4096, "D")返回4096
X或x 将数值显示为含有十六进制的数值,只有整数数值类型才支持此项。如 Format (4096, "X")返回: 1000。
Yes/No 或数字为0,显示NO,否则显示YES。如 Format (12345.6789, "Yes/NO")返回YES。
True/False 若数字为0,显示Flase,否则显示Yes。如 Format (12345.6789, "True/False"返回True.
On/Off 若数字为0,显示Off,否则显示On
用户定义的数值格式化字符 说明
# 和 0 # 或0表示一个数字,# 或0的个数决定了数值显示的长度。如果显示的数值的长度小于 # 或 0 的长度, 对于# 符号:无论是整数部分还是小数部分都不补零;对于0符号:整数在左端补零,小数在右端补零。如果显示的数值的长度大于 # 或 0的长度,对于 # 符号和 0 符号:整数部分都按数值的实际位数输出,小数部分都只显示到有有#号的位置,最后一位四舍五入。
. . 用于显示小数点。小数点与格式符 # 和 0 结合使用,用于指定小数的位数,多余的位数按四舍五入处理。如Format(123.456, "0000.00")结果为:0123.46
, ,(逗号)用来在数字中插入千分号。即从数值的小数点靠近左边的第一位开始,每3位插入一位千分号。逗号可放在小数点左边的任何位置。如
Format(1234567.893,"####, ##".##")结果为1,234,567.89。
% % 用于输出百分号。把数值乘以100在后面加上百分号。通常放在格式字符串的后面用来输出百分号。如Format(12.456, "###.##%") 结果为:1245.6
$ $放在格式字符串起始位置,用于美元符号输出,可在显示的数值前面加$符号。如Format(1234.567,"$###.##")结果为:$1234.57
+或- +或-通常放在格式字符串的前面。用来输出正号或负号。如Format(3456.012,"+###.##")结果为+3456.01;Format(3456.012,"-###.##")
E+或E- E+或E- 用于数值的指数形式。如 Format(3456.012,"#.###E+")结果为:3.456E+03
Format(0.01234, "#.###E-00")结果为:1.23E-02。
:或 / :为时间分隔符;/ 为日期分隔符。
"" 将双引号""内的字符串显示出来。
M、MM、MMM、MMMM M是以没有零开头地显示(1~12);MM以零开头的数字来显示(01!12);MMM是以简写表示月;MMMM是以命名表示月。如:Format(#1/13/2006#, "MMMM")返回"一月"
d、d d、d d d、d d d d d以没有零开头的数字来显示;d d是以有零开头的数字来显示;d d d是以简写来表示天;d d d d是以命名来表示天。
gg 显示纪年。例如:Format(#1/32006#,"gg")返回"公元"
H、HH、h、hh、m、mm、s、ss H是以24小时制,没有零开头的数字将小时显示成数字(0~23);HH是以24小时制,有零开头的数字来显示小(0~23);h是以12小时制,没有零开头的数字将小时显示成数字;hh是以12小时制,有零开头的数字来显示小时;m是以没有零开头的数字来显示分(0~59);mm是以有零开头的数字来显示分(00~59);s是以没有零开头的数字来显示秒(0~59);ss是以有零开头的数字来显示秒(00~59)。如Format(#02:31:50 pm#, "hh:mm:ss")返回02:31:50;Format(#02:31:50 pm#, "HH:mm:ss") 返回14:31:50 。
f f显示秒数的小数部分。如f f会显示至百分之一秒; f f f会显示至万分之一秒,最多可以使用7个f符号。
t 使用12小时制,同时在正午之前的任何小时加上大写A,在正午与11:59 pm之前的任何小时加上pm。
t t 使用12小时制,同时在正午之前任何小时加上大写Am;在下午与11:59 pm之前的任何小时加上pm。
y、y y、y y y、y y y y y是以一位数来表示年(0~9);y y是以两位数来表示(00~99);y y y和y y y y是以四位数来表示年。如Format(#1/3/2006#, "yyyy-MMMM-dd")返回2006-一月-03
:2、22、222 :2是显示时区差,而且还需要加上前缀零(如-8);22是显示时区时差,而且要加上前缀零(如-08);222是显示完整的时区差(如-08:00)
:/ % :是时间分割符;/是日期分割符;%是用来指示应将后面的字符当作一字母格式读取,而不管是否还跟着任何字母。
五、转换数据类型函数
这些函数的参数均为字符串表达式或数值表达式。例如:Cstr(#1/1/2002#)会返回"2002/1/1",因为这个函数的功能就是将参数转换成String类型并返回来。要注意的是,若参数超出类型转换函数的类型所允许的范围或参数的格式难以辨识,将产生错误。转换函数如下表:
转换函数 返回值 说明
CBool (exp) Boolean 将参数转换成Boolean类型并返回来
CByte (exp) Byte 将参数转换为Byte类型,参数须为0~255,小数部分四舍五入。
CChar (exp) Char 将参数转换成Date类型,参数须0~65536。
CDate (exp) Date 将参数转换成Date类型,参数须为有效日期时间。
CDbl (exp) Double 将参数转换成Double类型。
CDec (exp) Decimal 将参数转换成Decimal类型。
CInt (exp) Integer 将参数转换成Integer类型,小数部分四舍五入。
CLng Long 将参数转换成Long类型,小数部分四舍五入。
CObj (exp) Object 将参数转换成Object类型,参数须为有效的表达式
CShort (exp) Short 将参数转换成Short类型,小数部分四舍五入。
CSng (exp) Single 将参数转换成Single类型。
CStr (exp) String 将参数转换成String类型,要注意的是若参数为Boolean类型,则返回的字符串为"True"或"False";若为Date类型,返回短日期格式显示。
CType 这个函数的调用形式为:Type (expression, typename),也就是将第一个参数转换为第二个参数所指定类型后返回。
六、 获取数据类型函数
语法:TypeName (VarName As Object ) As String
说明:TypeName ()函数可能用来获取参数VarName的数据类型,返回值为字符串。
七、检查数据类型函数
函数 说明
IsNothing (Obj) 检查参数是否已经初始化,若对象变量没有指向任何真实对象,返回True,否则返回Flase。
IsDbNull (Obj) 检查参数是否包含任何有效数据,是的话返回True,否则返回False。
IsError (Obj) 检查参数是否为错误代码,是的话返回True,否则返回False。
IsDate (Obj) 检查参数是否为Date类型或可以转换成为Date类型的字符串,是的话返回True,否则返回False。
IsNumeric (Obj) 检查参数是否为数值类型(Byte、Short、Integer、Single、Double、Decimal),是的话返回True,否则返回False。
IsReference (Obj) 检查参数是否为Object类型,是的话返回True,否则返回False。
IsArray (Obj) 检查参数是否为数组,是的话返回True,否则返回False。