Microsoft Office 应用程序脚本编写提示和技巧(Excel中设置基本柱形图格式)
2006-05-09 10:53
585 查看
人们在初次尝试某件事情时总是认为它很不错,并且他们会有这样的想法:对,就是它,这件事太棒了,从今往后就干这个了。但是,当最初的激情冲动过去之后,许多人便开始怀疑这件事是否值得托付终身了。(如果您不相信,我们可以向您讲述一个“脚本编写兄弟”的经历,他在过去的 20 来年做过滑翔手、摩托车手、摩托艇冲浪手、船主、高山滑雪手、山地自行车手以及其他数不清的行当,他为此投入了巨资,最后他终于感到厌倦,决定去尝试一下别的事情。)生活原本如此:对于先前本以为是完美无缺的事物,过一会儿就能找出一大堆毛病。
呃,当然,这不包括“脚本编写夫妻”。(不然的话,要是他们当中有人正在阅读本文,那可就麻烦了。)
说这么多与 Microsoft Office 应用程序脚本编写有何相干?是这样,在以前的专栏中我们就使用 Microsoft Excel 创建图表和图形开始了一个新的系列,而且只用了短短一课向您展示了如何创建类似下面的图形:
objChart.ChartArea.Interior.ColorIndex = 1
[/code]
这就是您全部需要做的。想要将 PlotArea 的颜色设置为浅橙色吗?那么,就请继续试试以下的脚本:
想要更改 Walls、Floor 或任一 SeriesCollection 对象的颜色吗?只需将 Interior.ColorIndex 属性设置为所需的颜色即可。在本专栏的最后,我们将提供一个设置所有这些属性的脚本;只要您仔细阅读该脚本,便可以毫不费力地确定我们是何时以及如何执行诸如设置 Floor 对象背景颜色等操作的。
那么,为 PlotArea 添加边框又如何呢?正如您将会看到的那样,其难度只是更改背景颜色的二倍;我们需要一行代码来指定线宽(即线的粗度),还需要一行代码来设置 Border.ColorIndex 属性的值,仅此而已:
不过,Microsoft 却不知道他们付钱让我们来“教”诸位的东西几乎根本不用费力。让我们保守我们之间的这个小秘密,好吗?
唯一有些棘手的部分是为 SeriesCollection 设置属性值。这是因为在一个图表中可以有多个 SeriesCollection。例如,此图表就有两个系列集合:
objChart.SeriesCollection(1).Interior.ColorIndex = 3
[/code]
要是还有一个 SeriesCollection 对象,而且我们想要将该对象的背景颜色也设置为红色,又该如何?好啊,为什么不试试:
对于 ChartTitle,我们所要做的只是将字体大小更改为 24 磅,将字体颜色更改为白色。这只需存取 ChartTitle.Font 并设置以下各值即可:
最后(但当然不是最不重要),我们来谈谈图表轴。在标准的柱形图中有三个不同的轴,无论何时设置图表格式,都需要指定自己要处理哪个轴:
在今天的脚本中,我们要将所有三个轴的“刻度标签”的字体改为粗体。这样做的主要目的是向您展示如何存取不同的轴;例如,这行代码会修改“值”轴的刻度标签:
同样,对于轴还有更多的事情可做,但其中大多数要等到以后的专栏再做介绍。同时,如果您决定参照 Excel VBA 语言参考自行探索,这篇文章至少应能引领您走上正确的方向。开始时,您不妨只在我们所提供的基本脚本上进行一些更改。可以更改 ChartTitle 的字体颜色或字体大小,也可以更改 PlotArea 的背景颜色。还可以尝试做一些我们没有谈及的事情。只要觉得有趣,任何事情都可以做,不是吗?
顺便说一下,下面就是那个可以生成具有艺术美感图表的脚本:
呃,当然,这不包括“脚本编写夫妻”。(不然的话,要是他们当中有人正在阅读本文,那可就麻烦了。)
说这么多与 Microsoft Office 应用程序脚本编写有何相干?是这样,在以前的专栏中我们就使用 Microsoft Excel 创建图表和图形开始了一个新的系列,而且只用了短短一课向您展示了如何创建类似下面的图形:
objChart.ChartArea.Interior.ColorIndex = 1
[/code]
注意。要查看可显示所有颜色及其相应索引号的脚本,请单击此处。 |
objChart.PlotArea.Interior.ColorIndex = 40
想要更改 Walls、Floor 或任一 SeriesCollection 对象的颜色吗?只需将 Interior.ColorIndex 属性设置为所需的颜色即可。在本专栏的最后,我们将提供一个设置所有这些属性的脚本;只要您仔细阅读该脚本,便可以毫不费力地确定我们是何时以及如何执行诸如设置 Floor 对象背景颜色等操作的。
那么,为 PlotArea 添加边框又如何呢?正如您将会看到的那样,其难度只是更改背景颜色的二倍;我们需要一行代码来指定线宽(即线的粗度),还需要一行代码来设置 Border.ColorIndex 属性的值,仅此而已:
objChart.PlotArea.Border.Weight = 4 objChart.PlotArea.Border.ColorIndex = 46
不过,Microsoft 却不知道他们付钱让我们来“教”诸位的东西几乎根本不用费力。让我们保守我们之间的这个小秘密,好吗?
唯一有些棘手的部分是为 SeriesCollection 设置属性值。这是因为在一个图表中可以有多个 SeriesCollection。例如,此图表就有两个系列集合:
objChart.SeriesCollection(1).Interior.ColorIndex = 3
[/code]
要是还有一个 SeriesCollection 对象,而且我们想要将该对象的背景颜色也设置为红色,又该如何?好啊,为什么不试试:
objChart.SeriesCollection(2).Interior.ColorIndex = 3
注意。当您参考专栏末尾的“大师”脚本时,请注意,除了设置背景颜色以外,我们还为 SeriesCollection 起了一个名:2004。这正是脚本专家引以为傲的众多附赠特色之一! |
objChart.ChartTitle.Font.Size = 24 objChart.ChartTitle.Font.ColorIndex = 2
最后(但当然不是最不重要),我们来谈谈图表轴。在标准的柱形图中有三个不同的轴,无论何时设置图表格式,都需要指定自己要处理哪个轴:
• | 值轴。“值”轴(对您而言即是数学上的 y 轴)是图形的垂直轴。要处理“值”轴,我们需要定义一个名为 xlValue 的常量并为该常量赋值 2。 |
• | 类别轴。“类别”轴(即 x 轴)是图形的水平轴。要处理“类别”轴,我们需要定义一个名为 xlCategory 的常量并为该常量赋值 1。 |
• | 系列轴。代表三维图表的“深度”;“系列”轴在图表中存在一个以上的 SeriesCollection 时最为有用。要处理“系列”轴,我们需要定义一个名为 xlSeriesAxis 的常量并为该常量赋值 3。 |
objChart.Axes(xlValue).TickLabels.Font.Bold = TRUE
同样,对于轴还有更多的事情可做,但其中大多数要等到以后的专栏再做介绍。同时,如果您决定参照 Excel VBA 语言参考自行探索,这篇文章至少应能引领您走上正确的方向。开始时,您不妨只在我们所提供的基本脚本上进行一些更改。可以更改 ChartTitle 的字体颜色或字体大小,也可以更改 PlotArea 的背景颜色。还可以尝试做一些我们没有谈及的事情。只要觉得有趣,任何事情都可以做,不是吗?
顺便说一下,下面就是那个可以生成具有艺术美感图表的脚本:
Const xlCategory = 1 Const xlValue = 2 Const xlSeriesAxis = 3 Set objExcel = CreateObject("Excel.Application") objExcel.Visible = True Set objWorkbook = objExcel.Workbooks.Add() Set objWorksheet = objWorkbook.Worksheets(1) objWorksheet.Cells(1,1) = "Operating System" objWorksheet.Cells(2,1) = "Windows Server 2003" objWorksheet.Cells(3,1) = "Windows XP" objWorksheet.Cells(4,1) = "Windows 2000" objWorksheet.Cells(5,1) = "Windows NT 4.0" objWorksheet.Cells(6,1) = "Other" objWorksheet.Cells(1,2) = "Number of Computers" objWorksheet.Cells(2,2) = 145 objWorksheet.Cells(3,2) = 987 objWorksheet.Cells(4,2) = 611 objWorksheet.Cells(5,2) = 41 objWorksheet.Cells(6,2) = 56 Set objRange = objWorksheet.UsedRange objRange.Select Set colCharts = objExcel.Charts colCharts.Add() Set objChart = colCharts(1) objChart.Activate objChart.HasLegend = FALSE objChart.ChartTitle.Text = "Operating System Use" objChart.ChartType = -4100 objChart.ChartArea.Interior.ColorIndex = 1 objChart.ChartTitle.Font.Size = 24 objChart.ChartTitle.Font.ColorIndex = 2 objChart.Walls.Interior.ColorIndex = 37 objChart.Floor.Interior.ColorIndex = 37 objChart.SeriesCollection(1).Interior.ColorIndex = 3 objChart.SeriesCollection(1).Name = "2004" objChart.PlotArea.Interior.ColorIndex = 40 objChart.PlotArea.Border.Weight = 4 objChart.PlotArea.Border.ColorIndex = 46 objChart.Axes(xlValue).TickLabels.Font.Bold = TRUE objChart.Axes(xlCategory).TickLabels.Font.Bold = TRUE objChart.Axes(xlSeriesAxis).TickLabels.Font.Bold = TRUE
相关文章推荐
- Microsoft Office 应用程序脚本编写提示和技巧(在Excel 中创建饼图)
- Microsoft Office 应用程序脚本编写提示和技巧(保存图表和图形)
- .Net 脚本设置Excel的条件格式
- 在Excel中将数字设置成文本格式的技巧
- [唐胡璐]Excel技巧 - Excel Format(格式)的设置
- 在Excel中将数字设置成文本格式的技巧
- NPOI 2.0 教程(三):EXCEL 基本格式设置之ICellStyle
- 解决打开Excel时提示“您尝试打开的文件**.xls的格式与文件扩展名指定的格式不一致
- 使用C#和Excel进行报表开发(七)-设置单元格的显示格式 【转】
- POI对EXCEL的操作【重点:如何设置CELL格式为文本格式】
- LR技巧--提示框“当前安全设置禁止运行该页中的ActiveX控件……”问题
- 重装excel提示“系统管理员设置了系统策略,禁止进行此项安装”的解决方法 兼 baidu vs. Google
- 14、java实现poi操作excel,包括读和写日期格式,并且设置字体样式
- EXCEL基本技巧
- 增强iOS应用程序性能的提示和技巧
- C#连接Excel提示“外部表不是预期的格式”
- windows.关于设置脚本的一些基本方法原则
- unity3d编写脚本的一些技巧
- SQL Server 2008编写脚本时智能提示功能丢失的处理
- C#导出Excel,并且设置Excel单元格格式,合并单元格.