扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
我靠.你这个要求奇葩哦.都是控制一列的数据类型.你要这样.那你数据库就全部定义成双精度的类型.在读取的时候.
创新互联公司主要从事网站设计、成都网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务玉泉街道,十年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108
当前行为第一行的CTYPE(内容,De....) 忘记了.这样你第一行就是带小数点的
判断当前行数大于1.全部 CTYPE(内容,INTEGER) 就可以了. 这样一来.第二行开的的全部都是整数型的了
使用 Format函数来控制,说明如下,
. 强制显示小数点
Format("100123.12",".000") 返回值 100123.120
示例:
Private Sub Command1_Click()
Dim a, b, c
a = 5
b = 6
c = a * b
Print Format(c, ".00")
End Sub
效果如下:
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
当共有 一 部分时,按分号左边进行格式化
用这个函数把
Math.Round 方法 (Decimal, Int32)
将小数值舍入到指定精度。
命名空间: System
程序集: mscorlib(在 mscorlib.dll 中)
语法
Visual Basic(用法)
Dim d As Decimal
Dim decimals As Integer
Dim returnValue As Decimal
returnValue = Math.Round(d, decimals)
参数
d
类型:System.Decimal
要舍入的小数。
decimals
类型:System.Int32
返回值中的小数位数(精度)。
返回值
类型:System.Decimal
精度等于 decimals,最接近 d 的数字。
Math.Round(3.4666666, 4) 结果是 3.4667.
方法一:
用Round函数,语法 :
ROUND(number,num_digits)
Number 需要进行四舍五入的数字。 Num_digits 指定的位数,按此位数进行四舍五入。
示例:
'Round(需要修改的数字,小数位数)
Print Round(3.1415926, 3)
显示:3.142
方法二:
用Format函数,返回Variant(String),其中含有一个表达式,它是根据格式表达式中的指令来格式化的。
语法
Format(expression[,format[,firstdayofweek[,firstweekofyear]]])
Format函数的语法具有下面几个部分:
示例:
'Round(需要修改的数字,小数位数)
Print format (3.1415926, "#,###")
显示:3.142
方法三:
1、打开VB6.0软件,新建一个标准exe工程;
2、在设计界面上新建一个Command控件;
3、双击Command1控件,进入代码编辑界面,输入代码:
Private Sub Command1_Click()
Dim res As Double
res = Format(1 / 3, "0.000")
Print res;
End Sub
4、运行工程,单击按钮,可以看到数据被保留三位小数;
5、总结,想要保留几位小数,直接设置即可,如想设置保留5位小数,设置如下:
format(1/3,"0.00000")
1看看原数据的数据类型
2确认用来做显示的数据不是整型这类数据
可以用Rnd函数实现
Rnd 函数返回小于 1 但大于或等于 0 的值。
为了生成某个范围内的随机整数,可使用以下公式:
Int((upperbound - lowerbound + 1) * Rnd + lowerbound)
这里,upperbound 是随机数范围的上限,而 lowerbound 则是随机数范围的下限。
你这里可以先把范围扩大10倍,看成21到34之间的随机数,最后再除以10就行了。
Int((34 - 21 + 1) * Rnd + 21) / 10
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流