vb中Format函数的用法64
发布网友
发布时间:2023-11-05 08:07
我来回答
共5个回答
热心网友
时间:2024-12-05 11:56
VB中format函数
函数
Format
函数
语法
Format(expression[,
format[,
firstdayofweek[,
firstweekofyear]]])
函数功能
事实上Format方法有两种形式,另外一种是三个参数的,主要区别在于它是线程安全的,
但并不多用,所以这里只对第一个介绍。Format参数是一个格式字符串,用于格式化Args里面的值的。Args是一个变量数组,即它里面可以有多个参数,而且每个参数可以不同。
例如:
Format("my
name
is
%6s","wind");
返回的是:my
name
is
wind
expression
必要参数。任何有效的表达式。
format
可选参数。有效的命名表达式或用户自定义格式表达式。
firstdayofweek
可选参数。常数,表示一星期的第一天。
firstweekofyear
可选参数。常数,表示一年的第一周。
format
参数有下面设置:
(0)
数字占位符。显示一位数字或是零。如果表达式在格式字符串中
0
的位置上有一位数字存在,那么就显示出来;否则,就以零显示。如果数值的位数少于格式表达式中零的位数(无论是小数点的左方或右方),那么就把前面或后面的零补足。如果数值的小数点右方位数多于格式表达式中小数点右面零的位数,那么就四舍五入到有零的位数的最后一位。如果数值的小数点左方位数多于格式表达式中小数点左面零的位数,那么多出的部分都要不加修饰地显示出来。
(#)
数字占位符。显示一位数字或什么都不显示。如果表达式在格式字符串中“#”的位置上有数字存在,那么就显示出来;否则,该位置就什么都不显示。
此符号的工作原理和“0”数字占位符大致相同,不同之处只有在当表达式中数值的位数少于“#”的位数(无论是小数点左方或右方)时,不会把前面或后面的零显示出来。
(.)
小数点占位符。在一些国别是用逗号来当小数点的。小数点占位符用来决定在小数点左右可显示多少位数。如果格式表达式在此符号左边只有正负号,那么小于
1
的数字将以小数点为开头。如想在小数前有“0”的话,那么请在小数点占位符前加上“0”这个数字占位符。小数点占位符的实际字符在格式输出时要看系统的数字格式而定。
(%)
百分比符号占位符。表达式乘以
100。而百分比字符
(%)
会插入到格式字符串中出现的位置上。
(,)
千分位符号占位符。在一些国别,是用句点来当千位符号。千位符号主要是把数值小数点左边超过四位数以上分出千位。如果格式中在数字占位符(0
或
#)周围包含有千分位符号,则指定的是标准的千分位符号使用法。两个邻近的千分位符号或一个千分位符号紧接在小数点左边(不管小数位是否指定),其意思为“将数值除以
1000,按需要四舍五入”。例如,可以用格式字符串
"##0,,"
将
1
亿表示成
100。数值小于
1
百万的话表示成“0”,两个邻近的千分位符号除了紧接在小数点左边以外,在任何位置出现时均简单地视为指定了使用千分位符号。小数点占位符的真正字符在格式输出时,需视系统识别的数字格式而定。
(:)
时间分隔符。在一些国别,可能用其他符号来当时间分隔符。在格式化时间值时,时间分隔符可以用来分隔时、分和秒。时间分隔符的真正字符在格式输出时,取决于系统的设置。
(/)
日期分隔符。在一些国别,可能用其他符号来当日期分隔符。在格式化日期数值时,日期分隔符可以用来分隔年、月、日。日期分隔符的真正字符在格式输出时,取决于系统设置。
(E-
E+
e-
e+)
科学格式。如果格式表达式在
E-、E+、e-
或
e+
的右方含有至少一个数字占位符(0
或
#),那么数值将表示成科学格式,而
E
或
e
会被安置在数字和指数之间。E
或
e
右方数字占位符的个数取决于指数位数。使用
E-
或
e-
时,会用减号来表示负的乘幂。使用
E+
或
e+
时,会用减号来表示负的乘幂并用加号来表示正的乘幂。
-
+
$
(
)
显示一个原义字符。如想显示那些列出的字符之外的字符时,可以用反斜杠
(
\
)
字符作前缀或以双引号
("
")
括起来。
(\)
将格式字符串中下一个字符显示出来。如想显示一作为原义字符并有特殊含义的字符,可将此字符置于反斜杠
(\)
之后。反斜杠本身并不会显示出来。而使用反斜杠
(\)
的效果和使用双引号是一样的。如想显示反斜杠字符,可使用两个反斜杠
(\\)。
那些不能显示为原义字符的字符是日期格式字符和时间格式字符(a,
c,
d,
h,
m,
n,
p,
q,
s,
t,
w,
y,
/
和
:)、数值格式字符(#,
0,
%,
E,
e,
逗点和句点)和字符串格式字符(@,
&,
<,
>
和
!)。
("ABC")
显示双引号
("
")
之内的字符串。如在代码中想在
format
中包含一个字符串,必须用
Chr(34)
将文本括起来(34
为双引号
(")
的字符代码)。
参考:http://wenku.baidu.com/link?url=xm_g_x5DzqsSIXJpCLpmrYYpsYpr_B1RjWTxMHITN-Gv4hLr_H1vjIlp8TVwYvVxa5rHH4cMNFnBCn5VJKSMCJHjhmXWzHQl4L6E0wytc5_
热心网友
时间:2024-12-05 11:56
vb format函数
格式输出Format函数
Format函数用于制定字符串或数字的输出格式。
语法:x = Format (expression, fmt )
expression是所输出的内容。fmt是指输出的格式,这是一个字符串型的变量,这一项若省略的话,那么Format函数将和Str函数的功能差不多。如:
语句
输出
Format (2, “0.00”)
2.00
Format (.7, “0%”)
70%
Format (1140, “$#,##0”)
$1,140
fmt字符的意义
字符
意义
字符
意义
0
显示一数字,若此位置没有数字则补0
.
小数点
#
显示一数字,若此位置没有数字则不显示
,
千位的分隔符
%
数字乘以100并在右边加上”%”号
- + $ ( )
这些字出现在fmt里将原样打出
Format函数对时间进行输出时的意义
fmt
输出
fmt
输出
m/d/yy
8/16/96
h:mm:ss a/p
10:41:29 p
d-mmmm-yy
16-August-96
h:mm
22:41
d-mmmm
16-August
h:mm:ss
22:41:29
mmmm-yy
august-96
m/d/yy h:mm
8/16/96 22:41
hh:mm AM/PM
10:41 PM
VB Format函数使用方法
返回 Variant (String),其中含有一个表达式,它是根据格式表达式中的指令来格式化的。
语法
Format(expression[ format[ firstdayofweek[ firstweekofyear]]])
Format 函数的语法具有下面几个部分:
部分
说明
expression
必要参数。任何有效的表达式。
format
可选参数。有效的命名表达式或用户自定义格式表达式。
firstdayofweek
可选参数。常数,表示一星期的第一天。
firstweekofyear
可选参数。常数,表示一年的第一周。
设置值
firstdayofweek 参数有下面设置:
常数
值
说明
vbUseSystem
0
使用 NLS API 设置。
VbSunday
1
星期日(缺省)
vbMonday
2
星期一
vbTuesday
3
星期二
vbWednesday
4
星期三
vbThursday
5
星期四
vbFriday
6
星期五
vbSaturday
7
星期六
firstweekofyear 参数有下面设置:
常数
值
说明
vbUseSystem
0
使用 NLS API 设置。
vbFirstJan1
1
从包含一月一日的那一周开始(缺省)。
vbFirstFourDays
2
从本年第一周开始,而此周至少有四天在本年中。
VbFirstFullWeek
3
从本年第一周开始,而此周完全在本年中。
说明
格式化
作法
数字
使用预先定义的命名数值格式或创建用户自定义数值格式。
日期和时间
使用预先定义的命名日期/时间格式或创建用户自定义日期/时间格式。
日期和时间序数
使用日期和时间格式或数值格式。
字符串
创建自定义的字符串格式。
热心网友
时间:2024-12-05 11:57
hour = Format((time \ 60), "00000")
把小时强制按"00000"格式输出,也就是输出的小时数为一个五位数,如果不足五位,则前边补0
下边那句同上
Format函数 返回
返回 Variant (String),其中含有一个表达式,它是根据格式表达式中的指令来格式化的。
语法
Format(expression[, format[, firstdayofweek[, firstweekofyear]]])
Format 函数的语法具有下面几个部分:
部分 说明
expression 必要参数。任何有效的表达式。
format 可选参数。有效的命名表达式或用户自定义格式表达式。
firstdayofweek 可选参数。常数,表示一星期的第一天。
firstweekofyear 可选参数。常数,表示一年的第一周。
热心网友
时间:2024-12-05 11:57
Private
Sub
Form_Click()
a
=
0.12
a
=
Format(a,
"00.0000")
b
=
Format(a,
"##.#####")
Print
a
Print
b
End
Sub
你看啊,没有出现你说的情况,你的函数有问题,要使用英文状态的标点符号。你吧我的复制一下看看。
我的使用
a
=
Format(a,
"00.0000")
输出的是00.1200。
使用的
a=format(a,"##.####")
时,才出现你说的情况。
另外问题所在:a是声明为单精度“数据”了,你使用了
a
=后,先运行
Format(a,
"00.0000")。为
00.2400
继续运行赋值“=”就等到的
00.2400,再判断数据为单精度类型。又
将其强制转换为数值
.20。
方法1:不声明。方法二
使用中间变量
a
=
Format(a,
"00.0000")
改为:b
=
Format(a,
"00.0000")
最后输出b。都能解决、
如果回答对您有用,请给分!
热心网友
时间:2024-12-05 11:58
Format
函数示例
本示例显示用
Format
函数做格式化输出的不同用法.对于日期分隔号(/),时间分隔号(:),以及
AM/
PM
等文本而言,其真正的显示格式会因计算机上的国际标准不同而有所差异.在开发阶段,日期与时间是以短日期的格式,配合代码的国际标准来显示的.而在运行时,短日期则是根据系统的国际标准而定,而系统的国际标准和代码的国际标准可能并不相同.本示例中是假设国际标准为
English/United
States.
MyTime
及
MyDate
在开发环境下,使用系统的短日期设置显示出来的.
Dim
MyTime,
MyDate,
MyStr
MyTime
=
#17:04:23#
MyDate
=
#January
27,
1993#
'
以系统设置的长时间格式返回当前系统时间.
MyStr
=
Format(Time,
"Long
Time")
'
以系统设置的长日期格式返回当前系统日期.
MyStr
=
Format(Date,
"Long
Date")
MyStr
=
Format(MyTime,
"h:m:s")
'
返回
"17:4:23".
MyStr
=
Format(MyTime,
"hh:mm:ss
AMPM")
'
返回
"05:04:23
PM".
MyStr
=
Format(MyDate,
"dddd,
mmm
d
yyyy")
'
返回
"Wednesday,
Jan
27
1993".
'
如果没有指定格式,则返回字符串.
MyStr
=
Format(23)
'
返回
"23".
'
用户自定义的格式.
MyStr
=
Format(5459.4,
"##,##0.00")
'
返回
"5,459.40".
MyStr
=
Format(334.9,
"###0.00")
'
返回
"334.90".
MyStr
=
Format(5,
"0.00%")
'
返回
"500.00%".
MyStr
=
Format("HELLO",
"<")
'
返回
"hello".
MyStr
=
Format("This
is
it",
">")
'
返回
"THIS
IS
IT".