VBA函数 format

VBA 的 Format 函数与工作表函数 TEXT 用法基本相同,但功能更加强大,许多格式只能用于VBA 的 Format 函数,而不能用于工作表函数 TEXT 。

Format用法详解 
Format$(Now,"EEOA")
只要这么一句~~~~~就可以得到“ 二○○六年五月二十六日”
---------------------------------
Format[$] ( expr [ , fmt ] )
format 返回变体型
format$ 强制返回为文本
--------------------------------
数字类型的格式化
--------------------------------
固定格式参数:
General Number 普通数字,如可以用来去掉千位分隔号 
format$("100,123.10","General Number") 返回值 100123.1
Currency 货币类型,可添加千位分隔号和货币符号
format$("1234567","Currency") 返回值 ¥1,234,567.00
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","On/Off") 返回值 On
自定义格式参数
"" 不进行格式化 返回值 原值,但去除了小数点前后的无效0
format(“0.1230”,””) 返回值 .123
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(Date,"YYYY年MM月DD日")
‘M 个位月只显示一位,
‘MM 显示两位月,
‘MMM显示英文月简称,
‘MMMM显示英文全名

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","@[email protected]@") 返回值 CHaIN
当与 ! 配合时,则变为从左至右匹配
Format$("CHIN","[[email protected]][email protected][/email]@@") 返回值 CaHIN
当占位符比原文本字符串多时,刚在相应位置上添加空格
Format$("C","@@[email protected]") 返回值 空白空白aC
& 字符占位符。除在当占位位置不存在时,不显示外,其余均与@相同
当占位符比原文本字符串多时,刚在相应位置上添加空格
Format$("C","&&a&") 返回值
aC
< 强制小写。将所有字符以小写格式显示。
Format$("I love you","<") 返回值 i
love you
> 强制大写。将所有字符以大写格式显示。 
Format$("I love you",">") 返回值 I
LOVE YOU
! 强制由左而右填充字符占位符。缺省值是由右而左填充字符占位符。 
Format$("CHIN","[[email protected]][email protected][/email]@@") 返回值 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年

原文地址:https://www.cnblogs.com/inocalli/p/11002243.html

时间: 2024-11-06 04:46:07

VBA函数 format的相关文章

VBA函数

时间函数------------- 变量类型类型说明如下: %--整型 &--长整型 !--单精度浮点数 #--双精度浮点数 @--货币型 $--字符串型在Excel中录入数据时如何自动插入当前时间呢?比如说,用Excel制作了一份考勤表,员工上班时,门卫在相应的单元格中输入数值1,而想让Excel自动获取当前时间呢?对于这个问题,可以用VBA来实现了:右击考勤表所在的工作表标签(Sheet1),在随后出现的快捷菜单中,选择"查看代码"选项,打开Visual Basic窗口,并

python输出格式化及函数format

总结了一些简单基本的输出格式化形式以及函数format函数基本使用形式. 字符串格式化代码: 格式 描述 %% 百分号标记 %c 字符及其ASCII码 %s 字符串 %d 有符号整数(十进制) %u 无符号整数(十进制) %o 无符号整数(八进制) %x 无符号整数(十六进制) %X 无符号整数(十六进制大写字符) %e 浮点数字(科学计数法) %E 浮点数字(科学计数法,用E代替e) %f 浮点数字(用小数点符号) %g 浮点数字(根据值的大小采用%e或%f) %G 浮点数字(类似于%g) %

Javascript 字符串组装用函数 format

if (!String.prototype.format) { String.prototype.format = function() { var args = arguments; return this.replace(/{(\d+)}/g, function(match, number) { return typeof args[number] != 'undefined' ? args[number] : match ; }); }; } Javascript 字符串组装用函数 for

SQL Server提供更为灵活的转换函数FORMAT。

CONVERT函数的style是数字,记忆起来比较困难,只能按照系统定义的格式来显示,不够灵活.SQL Server提供更为灵活的转换函数FORMAT. 2,FORMAT函数,控制日期和时间类型的显示格式 FORMAT函数主要用于格式化显示date/time类型和数值类型,参数format用于指定显示的格式,给予用户对格式更自由地控制,culture参数是可选的,用于指定显示的语言,该函数返回值的数据类型是NVARCHAR,如果格式转换失败,该函数返回NULL: FORMAT ( value,

Python标准库:内置函数format(value[, format_spec])

本函数把值value按format_spec的格式来格式化,然而函数解释format_spec是根据value的类型来决定的,不同的类型有不同的格式化解释.当参数format_spec为空时,本函数等同于函数str(value)的方式. 其实本函数调用时,是把format(value, format_spec)的方式转换为type(value).__format__(format_spec)方式来调用,因此在value类型里就查找方法__format__(),如果找不到此方法,就会返回异常Typ

强大的字符串格式化函数 - format

自python2.6开始,新增了一种格式化字符串的函数str.format(),它通过{}和:来代替% 位置方法格式化 >>>'{}-{}'.format('simon','ting') 'simon-ting' >>>'{1}.{2}'.format('www','baidu','com') 'baidu.com' >>> '{1}.{2} | {0}.{1}.{2}'.format('www','baidu','com') 'baidu.com |

内置函数——format

说明: 1. 函数功能将一个数值进行格式化显示. 2. 如果参数format_spec未提供,则和调用str(value)效果相同,转换成字符串格式化. >>> format(3.1415936) '3.1415936' >>> str(3.1415926) '3.1415926' 3. 对于不同的类型,参数format_spec可提供的值都不一样 #字符串可以提供的参数,指定对齐方式,<是左对齐, >是右对齐,^是居中对齐 print(format('te

内置函数----format

说明: 1. 函数功能将一个数值进行格式化显示. 2. 如果参数format_spec未提供,则和调用str(value)效果相同,转换成字符串格式化. >>> format(3.1415936) '3.1415936' >>> str(3.1415926) '3.1415926' 3. 对于不同的类型,参数format_spec可提供的值都不一样 #字符串可以提供的参数,指定对齐方式,<是左对齐, >是右对齐,^是居中对齐 print(format('te

python 内置函数format

Python2.6 开始,新增了一种格式化字符串的函数 str.format(),它增强了字符串格式化的功能. 基本语法是通过 {} 和 : 来代替以前的 % . format 函数可以接受不限个参数,位置可以不按顺序. 代码如下图: #coding="utf-8"print("{} {}".format("hello", "world") )print("{0} {1}".format("hel