【VB】Format 格式化日期时间数字函数详解
【VB】Format 格式化日期时间数字函数详解 VB 中 Format 格式化日期时间、数字函数功能详解: VB 格式化日期时间:MsgBox Format$(Now, "c") '2006-5-25 14:56:05 Format[$] (expr[,fmt]) format 返回变体型 format$ 强制返回为文本 -------------------------------- 数字类型的格式化 -------------------------------- 固定格式参数: General Number 普通数字,如可以用来去掉千位分隔号 format$("100,123.12","General Number") 返回值 100123.12 Currency 货币类型,可添加千位分隔号和货币符号 format$("100123.12","Currency") 返回值 ¥100,123.12 Fixed 格式为带两位小数的数字 format$("100123","Fixed") 返回值 100123.00 Standard 标准,即带千位分隔号和两位小数 format$("100123","Standard") 返回值 100,123.00 Percent 百分数 format$("100123","Percent") 返回值 10012300.00% Scientific 科学记数法 format$("100123","Scientific") 返回值 1.00E+05 Yes/No 当值为0时返回 NO,否则返回 YES format$("100123","Yes/No") 返回值 Yes True/False 当值为0时返回 False,否则返回 True format$("100123","True/False") 返回值 True On/Off 当值为0时返回 Off,否则返回 On format$("100123","Yes/No") 返回值 On 自定义格式参数 "" 不进行格式化 返回值 原值 0 占位格式化,不足补0 format$("100123","0000000") 返回值 0100123 # 占位格式化,不足时不补0 format$("100123","#######") 返回值 100123 . 强制显示小数点 format$("100123.12",".000") 返回值 100123.120 % 转化为百分数,一个%代表乘以100 format$("10.23","0.00%") 返回值 1023.00% format$("10.23","0.00%%") 返回值 102300.00%% , 以千为单位格化 format$("10.23",",") 返回值 0 format$("10010.23",",") 返回值 10 format$("10010.23",",0.00") 返回值 10.01 E- E+ e- e+ 显示为科学记数(要注意格式语句,否则会和E的其它含义相混) Format$(12.5,"0.00E+00") 返回值 1.25E+01 $ 强制显示货币符号 format$("10.23","{threadcontent}.00") 返回值 ¥10.23 - + ( ) space 按位置显示本样 Format$("1234.56","-(0.00)") 返回值 -(1234.56) \ 转义符,显示出特殊符号 Format$("1234.56","\#.00") 返回值 #1234.56 "ABC" 显示双引号 (" ") 之内的字符串。如在代码中想在 format 中包含一个字符串,必须用 Chr(34) 将文本括起来(34 为双引号 (")) Format$(123.45,"TTT") 返回值 TTT 注:当双引号中的文本包含特殊的参数符号如e,要使用转义符"\",否则会按e的作用显示 ; 类似多目运算符的作用。 当共有 四 部分时, 当大于0 时,按第一部分进行格式化, 当小于0 时按第二部分进行格式化, 当等于0 时按第三部分进行格式化, 当为null值时,按第四部分进行格式化。如: Format$(0,"0.00;负数;零;空") 返回值 零 当共有 三 部分时, 当大于0 时,按第一部分进行格式化, 当小于0 时按第二部分进行格式化, 当等于0 时按第三部分进行格式化,如: Format$(-10,"0.00;ttt;零") 返回值 ttt 当共有 两 部分时, 当大于或等于0 时,按第一部分进行格式化, 当小于0 时按第二部分进行格式化, Format$(-123,"0.00;abc") 返回值 abc Format$(123,"0.00;abc") 返回值 123.00 当共有 一 部分时,按分号左边进行格式化 --------------------------------- 日期类型的格式化 --------------------------------- 注意:在中文操作系统中,系统自动将月份输为如:五月,而非 May 固定格式参数 General Date 基本类型 Format$(Now,"General Date") 返回值 2006-5-25 14:56:15 Long Date 操作系统定义的长日期 Format$(Now,"Long Date") 返回值 2006年5月25日 Medium Date 中日期(yy/mmm/dd) Format$(Now,"Medium Date") 返回值 06-5月-25 Short Date 操作系统定义的短日期 Format$(Now,"Short Date") 返回值 2006-5-25 Long Time 操作系统定义的长时间 Format$(Now,"Long Time") 返回值 15:06:36 Medium Time 带AM/PM的12小时制,不带秒 Format$(Now,"Medium Time") 返回值 03:08 PM Short Time 24时制的时间,不带秒 Format$(Now,"Short Time") 返回值 15:08 自定义格式参数 : 用来标识时间字符的间隔 Format$(Time(),"hh:nn") 返回值 15:25 / 用来标识日期字符的间隔 Format$(now,"yyyy/mm/dd") 返回值 2006-05-25 c 格式化为国标的日期和时间 Format$(Now,"c") 返回值 2006-5-25 14:56:15 y 一年中的第几天 Format$(Now,"y") 返回值 145 d 一个月中的第几天(1-366) Format$(Now,"d") 返回值 25 dd 当小于10时前面带0的天数(01-31) Format$("2006-1-7","dd") 返回值 07 ddd 周几 Format$(Now,"ddd") 返回值 周四 dddd 星期几 Format$(Now,"dddd") 返回值 星期四 ddddd 显示标准日期 Format$(Now,"ddddd") 返回值 2006-05-25 dddddd 长日期 Format$(Now,"dddddd") 返回值 2006年5月25日 w 一个星期中的第几天 Format$(Now,"w") 返回值 5 ww 一年中的第几周 Format$(Now,"ww") 返回值 21 m 月数(注:当用于时间时,也可以表时为分钟) Format$(Now,"m") 返回值 5 Format$(Now,"h:m") 返回值 16:11 mm 当小于10时前面带0的月数(注:当用于时间时,也可以表时为带0的分钟) Format$(Now,"m") 返回值 05 Format$(Now,"hh:mm") 返回值 16:09 mmm 月份 Format$(Now,"mmm") 返回值 五月 q 一年中的第几季(1-4) Format$(Now,"q") 返回值 2 yy 两位数的年份(00-99) Format$(Now,"yy") 返回值 06 yyyy 四位数的年份(0100-9999) Format$(Now,"yyyy") 返回值 2006 h 一天中的第N小时(0-23) Format$(Now,"h") 返回值 16 hh 当小于10时带0的小时数(00-23) Format$("7:30:28","hh") 返回值 07 n 一小时的分钟数(0-59) Format$("7:30:28","n") 返回值 30 nn 当小于10时带0的分钟数(00-59) Format$("7:3:28","n") 返回值 03 s 一分钟中的秒数(0-59) Format$("7:30:8","s") 返回值 8 ss 当小于10时带0的分钟数(00-59) Format$("7:3:8","ss") 返回值 08 ttttt 标准时间,小时数当小于10时不带0,与h:mm:ss相同 Format$("7:3:28","ttttt") 返回值 7:03:28 AM/PM 显示当前为AM或为PM Format$(Now,"AM/PM") 返回值 PM A/P 显示当前为A或为P Format$(Now,"A/P") 返回值 P AMPM 对0至2359的数值进行判断是AM还是PM,可以看作是同等于对00:00至23:59的数字进行判断,如1000可以看作是10:00。 Format$(1000,"AMPM") 返回值 AM 联合格式化 m/d/yy Format$(Now,"m/d/yy") 返回值 5-25-06 d-mmm-yy Format$(Now,"d-mmm-yy") 返回值 25-5月-06 d-mmmm Format$(Now,"d-mmmm") 返回值 25-五月 mmmm-yy Format$(Now,"mmmm-yy") 返回值 五月-06 hh:mm AM/PM Format$(Now,"hh:mm AM/PM") 返回值 04:50 PM h:mm:ss a/p Format$(Now,"h:mm:ss a/p") 返回值 4:51:38 p h:mm Format$(Now,"h:mm") 返回值 16:51 h:mm:ss Format$(Now,"h:mm:ss") 返回值 16:51:38 m/d/yy h:mm Format$(Now,"m/d/yy h:mm") 返回值 5-25-06 16:54 ---------------------------------- 文本类型的格式化 ---------------------------------- ; 当两部分时,则第一部分为非空格式化,第二部分为null值或空值的格式化表达式 @ 匹配位置插入格式化文本,占位位置不存在时,显示空白(空字符串) 只有一个@符号时,是在最后面加上格式化文本 Format$("CHIN","@a") 返回值 CHINa 有多个@占位符,是按从右至左匹配,并在相应的位置上显示格式化文本 Format$("CHIN","@a@@") 返回值 CHaIN 当与 ! 配合时,则变为从左至右匹配 Format$("CHIN","@@") 返回值 CaHIN 当占位符比原文本字符串多时,刚在相应位置上添加空格 Format$("C","@@a@") 返回值 空白空白aC & 字符占位符。除在当占位位置不存在时,不显示外,其余均与@相同 当占位符比原文本字符串多时,刚在相应位置上添加空格 Format$("C","&&a&") 返回值 aC < 强制小写。将所有字符以小写格式显示。 Format$("I love you","<") 返回值 i love you > 强制大写。将所有字符以大写格式显示。 Format$("I love you",">") 返回值 I LOVE YOU ! 强制由左而右填充字符占位符。缺省值是由右而左填充字符占位符。 Format$("CHIN","@@") 返回值 CaHIN ---------------------------------------- 强制使用中文格式的日期时间 ---------------------------------------- aaaa 星期 Format$(Now,"aaaa") 返回值 星期五 O 中文月份 Format$(Now,"O") 返回值 五月 o 单字节月份 Format$(Now,"o") 返回值 5月 A 中文日期 Format$(Now,"A") 返回值 二十六日 a 单字节日期 Format$(Now,"a") 返回值 26日 E 短中文年份 Format$(Now,"E") 返回值 六年 e 单单字节年份 Format$(Now,"e") 返回值 6年 EE 中文年份 Format$(Now,"EE") 返回值 二○○六年 ee 单字节年份 Format$(Now,"ee") 返回值 2006年 想不到中文日期的问题就这么容易解决: Format$(Now,"EEOA") 返回值 二○○六年五月二十六日