您的位置:首页 > 游戏 > 游戏 > 物联网软件定制开发_长沙百度首页排名_seo详细教程_百度竞价代理公司

物联网软件定制开发_长沙百度首页排名_seo详细教程_百度竞价代理公司

2024/10/11 10:04:12 来源:https://blog.csdn.net/VBA6337/article/details/142766960  浏览:    关键词:物联网软件定制开发_长沙百度首页排名_seo详细教程_百度竞价代理公司
物联网软件定制开发_长沙百度首页排名_seo详细教程_百度竞价代理公司

《VBA经典应用69例》(版权10178981),是我推出的第九套教程,教程是专门针对初级、中级学员在学习VBA过程中可能遇到的案例展开,这套教程案例众多,紧贴“实战”,并做“战术总结”,以便大家能很好的应用。教程的目的是要求大家在实际工作中要利用好VBA。本套教程共三册六十九个专题,今日内容:VBA经典应用69例应用6:利用VBA进行格式化的设置

30050dc88ca30cc7994b4576c3bb99b3.jpeg

分享成果,随喜正能量】心无挂碍,尽情享受当下便好。世事浮云何足问,不如高卧且加餐。生活中一切事,放平心态,不纠结、不执着,从容潇洒的走过,也是一种难得的人生智慧。

应用6 工作表中数值的格式化(NumberFormat)处理

这个专题的应用也是来源于给学员的答疑,格式(Format)是我们在处理工作表数据时必须要面对的问题,处理的好可以让整个工作表看起来赏心悦目,处理的不好,会给人以凌乱的感觉。我们这讲的内容将总结一下在工作表中如何格式化数据,处理方案仍是结合我们日常工作中的EXCEL操作来进行。

NumberFormat是Excel Range对象的属性。Range对象可以被视为一个单元格或一组单元格,可以是单个单元格、或者是一列或是工作表的UsedRange。NumberFormat属性可用于设置时间、日期、货币/会计格式和许多其他格式的格式。通过这种格式的设置,可以让信息以最佳方式传递给阅读者。例如,我们可以在长数字中加入一些逗号,可以在把小数点长的数字向上(或向下)舍入到最接近的2或3个小数点等等。此外,NumberFormat还可以用来设置一个自定义格式。

4 利用VBA进行格式化的设置

在这节中,我们讲解利用VBA进行格式化设置,我仍是通过实例应用给大家讲解。

实例一:VBA基本的单元格格式设置

在这个实例中我们利用VBA完成单元格的数字格式属性设置。在此示例中,我们希望将单元格C2的十进制小数点位数设置为2,单元格C3添加逗号,使其更具可读性。C1和C2单元格的值都等于响应A列单元格的值。原始数据如下截图:

5552fdabea7b760af7b313f9c979db66.jpeg

为了完成上面的格式要求,代码如下:

Sub mynzA()

Sheets("SHEET3").Select

Range("B2") = "保留两位小数"

Range("C2").Value = Range("A2").Value

Range("C2").NumberFormat = "#.##"

Range("B3") = "数值添加逗号"

Range("C3").Value = Range("A3").Value

Range("C3").NumberFormat = "#,#"

End Sub

代码截图:

6198f1b669e2977a021b714f99304ee5.jpeg

代码的讲解:(略)

代码的运行结果:

9afeffb33bfeea0f2ab051520ce9acbd.jpeg

实例二:单元格格式设置的处理

这个实例中,我们仍然对C列的单元格进行设置,值的来源仍是A列的数据。C4中添加逗号,以便于读取。C5单元格,我们希望删除右边的六位数字,并改为"M",我们不希望有任何小数点。

我们先看一下原始数据:

3ae917649b3a095e6a8ce30ba72135b3.jpeg

代码如下:

Sub mynzB()

Sheets("SHEET3").Select

Range("B4") = "添加逗号,两位小数"

Range("C4").Value = Range("A4").Value

Range("C4").NumberFormat = "#,##0.##"

Range("B5") = "数值保留*M形式"

Range("C5").Value = Range("A5").Value

Range("C5").NumberFormat = "#,##0,, ""M"""

End Sub

代码截图:

a2f71c47fba1d209a1138a8fecb12609.jpeg

代码的讲解:"#,##0,, ""M""",如果此设置中两个相连的逗号与两个相连的引号间不加空格, 那么在最后显示的运行结果中“1”和“M”间同样也将不存在空格。

代码的运行结果:

51640512c6bfc229f8b22c6f3082e1c8.jpeg

实例三:条件格式设置

这个实例是一种条件格式的设置,有时,如果数字为负可能需要将字体变红。当单元格值为零时,要显示特定字符串(字符集)。此时我们可以利用下面的语法达到我们的目的:

[display of positive values];[display of negative values];[display of zero values]; [display of text values]

这个语法共四部分,分别完成正值、负值、零及文本的格式设置,在这些方括号中,我们可以完成格式设置代码。

如下面截图的数据:

6d50751424e9079c3a1dd4a83cc7a688.jpeg

我们要完成的设置为:让数以红色区分;小数点位数为两位;添加逗号;将零替换为"-"。下面看我给出的格式设置代码:

Sub mynzC()

Sheets("SHEET3").Select

Range("B6:B11") = "条件格式设置"

Range("C6:C11").Value = Range("A6:A11").Value

Range("C6:C11").NumberFormat = "#,0.00;[red]-#,0.00;""-"""

End Sub

代码的截图:

c61c47f9a731231110e0f5b4730eac2f.jpeg

代码的讲解:让我们分解格式代码:"#,0.00;[red]-#,0.00;""-""" 其中有两个分号,这意味着首先是正值代码,然后是负值代码,然后是零值代码。

1)正值的设置代码,代码部分如下截图:89f016fd9f99347f9df013120e02d25c.jpeg

① ".00"确保我们有两个小数位。

② "0.00"确保小数的左侧至少有一位数字,如果没有,则将放置一个零位。

③ "#,0"确保在适用的情况下添加逗号。请注意,我们使用的是井号标签符号而不是零号,因为如果我们小数的左侧只有一位数字,那么我们就不想在左侧添加零。

2)负值的设置代码,代码部分如下截图:

4d5263d170e7e1954797fdb103a1fd20.jpeg

其中[red]是为了设置负值为红色。其余类似正值的设置。

3)剩余的部分为零值的设置,将零值替换为“-”。这里是双层的引号,必须编写外部双引号,因为代码是字符串(字符)。“-”自然需要用双引号括起来。但是为了向VBA表明我们需要这些双引号(这意味着我们不仅仅是以函数的方式使用它们,而是实际上希望它们成为字符串的一部分),我们用另一对双引号将它们包围起来。

最后我们看看代码的运行输出效果:

a2941b823ea7588577152b8ab5ea7028.jpeg

总结:Excel中数字格式属性可通过Excel界面或VBA来实现。本讲的格式化代码我列举了大量的示例进行解释,以便读者能理解格式化的操作。另外,数字格式属性中还有条件格式,可用于为特定条件设置指定格式。同时格式化时可以将文本与数字相结合。

今日内容回向:

1 VBA如何设置单元格的格式?

2 单元格条件格式的语法是怎样的,如何利用条件格式设置单元格?

本讲内容参考程序文件:应用006.xlsm

df6232585db3589e871d56ff2145aabd.jpeg

我20多年的VBA实践经验,全部浓缩在下面的各个教程中:

ff86ebea679d849f23b97bcd28668584.jpeg

2676436484cf23c44b5c45ab56ae45a2.jpeg



版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com