Excel中有许多数据格式,因为要呈现不同的数据方式,如此就需要对不同的数据进行格式设置。
这是一个很简单的道理,但是在对Excel操作的时候,很难准确的掌握各种数据的表现形式。
这样就会用到一个数据格式化的属性,本节示例为NumberFormat属性的使用方法介绍。
以Range对象为例来编写一些代码,通过数据格式设置,将数据以想要的方式显示出来。
思路清楚以后,就是对数据格式进行设置。
使用方法:
RangeObject.NumberFormat="0;-(0);0;-"
最简单的方式如上代码所示,NumberFormat的值是由一串字符来表示,实际上这串字符由4部分组成,每个部分以";"为间隔标志。
第一部分表示正数的数据形式,第二部分为负数的数据形式,第三部分为零的形式,第四部分表示数据为文本格式的数据形式。
如下图所示:
不同数字的表达方式:
显示 | 效果 | 所用代码 |
1234.59 | 1234.6 | ####.# |
8.9 | 8.900 | #.000 |
.631 | 0.6 | 0.# |
1.2 1234.568 | 12.0 1234.57 | #.0# |
数字: 44.398 102.65 2.8 | 小数点对齐: 44.398 102.65 2.8 | ???.??? |
数字: 5.25 5.3 | 对齐分数的分子: 5 1/4 5 3/10 | # ???/??? |
这是最简单的表达方式,同时还有一些日期或时间的表达方式。
如下表所示:
显示 | 效果 | 所用代码 |
年 | 00-99 | yy |
年 | 1900-9999 | yyyy |
Months | 1-12 | m |
Months | 01-12 | mm |
Months | Jan-Dec | mmm |
Months | January-December | mmmm |
Months | J-D | mmmmm |
Days | 1-31 | d |
Days | 01-31 | dd |
Days | Sun-Sat | ddd |
Days | Sunday-Saturday | dddd |
小时 | 0-23 | h |
小时 | 00-23 | hh |
会议纪要 | 0-59 | m |
会议纪要 | 00-59 | mm |
秒 | 0-59 | s |
秒 | 00-59 | ss |
时间 | 4:00 | h AM/PM |
时间 | 下午 4:36 | h:mm AM/PM |
时间 | 下午 4:36:03 | h:mm:ss A/P |
时间 | 下午 4:36:03.75 | h:mm: |
经过的时间 (小时和分钟) | 1:02 | [h]:mm |
经过的时间 (分钟和秒) | 62:16 | [mm]:ss |
经过的时间 (秒和百分) | 3735.80 | [ss].00 |
代码示例:
Private Sub SetNumberFormat() Dim R As Range, x As Variant Set R = Range("A1") x = A("输入数据:", "NumberFormat", "") R.Value = x Dim cR As Range Set cR = Range("B4:E4") Dim cS As String, f As String f = ";" cS = cR.Item(1).Value & f & _ cR.Item(2).Value & f & _ cR.Item(3).Value & f & _ cR.Item(4).Value R.NumberFormat = cS Me.Label1.Caption = R.Value End Sub
NumberFormat给我们一些很好的数据形式设置方法,如果全部掌握那将对Excel数据操作有一个质的提高。
通过不断的总结学习,可以最大化的实现数据多元化显示方式。
重点提醒一下,这里的数据显示方式,并不能真正意义上改变表格内容,也就是说,无论显示出来的数据是什么样子,其真正的值是不会变的。
欢迎关注、收藏
---END---