VBA常用技巧代码解析
为指定图表设置源数据区域,语法如下:
expression.SetSourceData(Source, PlotBy)
参数expression是必需的,该表达式返回一个Chart对象。 参数Source是可选的,源数据的区域。
参数PlotBy是可选的,指定数据绘制方式,可为xlColumns(系列产生在列)或xlRows(系列产生在行)。
第13行代码使用ApplyDataLabels方法使图表显示数据标签和数据点的值,应用于Chart对象的ApplyDataLabels方法将数据标签应用于图表中的某一数据点、某一数据系列或所有数据系列,语法如下:
expression.ApplyDataLabels(Type, LegendKey, AutoText, HasLeaderLines, ShowSeriesName, ShowCategoryName, ShowValue, ShowPercentage, ShowBubbleSize, Separator)
参数expression是必需的,该表达式返回一个Chart对象。
参数Type是可选的,要应用的数据标签的类型,可为表格 8-1所列的XlDataLabelsType 常量之一。
常量 xlDataLabelsShowBubbleSizes 值 6 描述 无 占总数的百分比及数据点所属的分类。仅用于饼图或圆环图。 占总数的百分比。仅用于饼图或圆环图。 数据点所属的分类。 xlDataLabelsShowLabelAndPercent 5 xlDataLabelsShowPercent xlDataLabelsShowLabel xlDataLabelsShowNone xlDataLabelsShowValue 3 4 -4142 无数据标签。 2 数据点的值,若未指定本参数,默认使用此设置。 表格 8-1 XlDataLabelsType 常量
参数LegendKey是可选的,如果该值为True,则显示数据点旁的图例项标示。默认值为False。
参数AutoText是可选的,如果对象根据内容自动生成正确的文字,则该值为True。 参数HasLeaderLines是可选的,如果数据系列具有引导线,则该值为True。 参数ShowSeriesName是可选的,数据标签的系列名称。 参数ShowCategoryName是可选的,数据标签的分类名称。 参数ShowValue是可选的,数据标签的值。
参数ShowPercentage是可选的,数据标签的百分比。 参数ShowBubbleSize是可选的,数据标签的气泡尺寸。 参数Separator是可选的,数据标签的分隔符。
21
VBA常用技巧代码解析
第14、15行代码设置新创建的图表有可见的标题并设置图表标题的文字。应用于Chart对象的HasTitle属性,如果坐标轴或图表有可见标题,则该值为True,而ChartTitle属性返回一个ChartTitle对象,代表指定图表的标题。
第16行到第20行代码设置图表标题文字的格式。 第21行到第25行代码设置图表区的颜色。 第26行到第30行代码设置绘图区的颜色。
第31行代码删除图表上第一个数据系列中的数据标签。SeriesCollection方法返回图表或图表组中单个数据系列(Series对象)或所有数据系列的集合(SeriesCollection集合)的对象,语法如下:
expression.SeriesCollection(Index)
可选的Index参数指定数据系列的名称或编号。
而DataLabels方法则返回代表数据系列中的单个数据标签(DataLabel对象)或所有数据标签的集合(DataLabels集合)的对象,语法如下:
expression.DataLabels(Index)
可选的Index参数指定数据系列中的数据标签的编号。
第32行到第36行代码设置图表上第二个数据系列中的数据标签的字体格式。 运行ChartAdd过程,在工作表中创建簇状柱形图,如图 8-1所示。
图 8-1 创建簇状柱形图
22
VBA常用技巧代码解析
技巧9 使用独立窗口显示图表
如果需要将工作表中嵌入的图表显示在独立的窗口中,可以使用下面的代码。
#001 Sub ChartShow()
#002 With Sheet1.ChartObjects(1) #003 .Activate
#004 .Chart.ShowWindow = True #005 End With
#006 With ActiveWindow #007 .Top = 50 #008 .Left = 50 #009 .Width = 400 #010 .Height = 280
#011 .Caption = ThisWorkbook.Name #012 End With #013 End Sub
代码解析:
ChartShow过程,将工作表中嵌入的图表显示在独立的窗口中。
第2行到第5行代码将工作表中指定图表的ShowWindow属性设置为True,使用独立的窗口显示该图表。
第7、8行代码指定活动窗口显示的位置。
第9、10行代码调整活动窗口的大小使之适应图表的大小。 第11行代码指定活动窗口标题栏中显示的标题。 运行ChartShow过程结果如图 9-1所示。
23
VBA常用技巧代码解析
图 9-1 使用独立窗口显示图表
技巧10 导出工作表中的图表
如果需要将工作表中的图表保存为单独的图像文件,可以使用Export方法以图形文件格式导出图表,示例代码如下。
#001 Sub ExportChart() #002 Dim myChart As Chart #003 Dim myFileName As String
#004 Set myChart = Sheet1.ChartObjects(1).Chart #005 myFileName = \#006 On Error Resume Next
#007 Kill ThisWorkbook.Path & \#008 myChart.Export Filename:=ThisWorkbook.Path _ #009 & \
24
VBA常用技巧代码解析
#010 MsgBox \图表已保存在[\文件夹中!\#011 Set myChart = Nothing #012 End Sub
代码解析:
ExportChart过程使用Export方法将工作表中的图表以图形文件的形式导出。 第4行代码指定工作表中的图表对象。 第5行代码指定图形文件保存的文件名。
第6、7行代码使用Kill语句删除文件夹中原有的图形文件。当文件夹中指定删除的文件不存在时Kill语句会出错所以需要使用On Error语句忽略错误。
第8、9行代码使用Export方法将图表导出到同一目录中,应用于Chart对象的Export方法以图形文件格式导出图表,语法如下:
expression.Export(Filename, FilterName, Interactive)
其中参数Filename是必需的,被导出的文件的名称,示例中加上了文件保存的路径。 参数FilterName是可选的,被导出的文件的图形格式,示例中文件以JPG文件格式保存。
技巧11 多图表制作
如果需要,我们可以为工作表中的每一个数据区域创建一张图表,在如图 11-1所示的工作表区域中,需要为每一个员工的全年数据创建一张图表。
图 11-1 数据区域
25
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Excel VBA常用技巧 第04章 shape及Chart对象(5)在线全文阅读。
相关推荐: