柔百科

系列产生在列怎么设置(VBA代码之三十四:使用VBA自动生成图表)

时间:2024-08-10 12:16:34

如何利用VBA生成图表的前半部分,在实际工作中我们常用图表来表现数据间的某种相对关系,一般采用手工插入的方式,如下图就是一个我们经常用到的图表:

而使用VBA代码可以在工作表中自动生成图表,这节我们重点讲解一些方法及函数,在下节中我们将结合实例来讲解。。

一:应用于ChartObjects对象的Add方法:创建新的嵌入图表,语法如下:

expression.Add(Left, Top, Width, Height)

参数a)Left、Top是必需的,以磅为单位给出新对象的初始坐标,该坐标是相对于工作表上单元格A1的左上角或图表的左上角的坐标,。

参数b)Width、Height是必需,以磅为单位给出新对象的初始大小。

二:应用于Chart对象的SetSourceData方法:为指定图表设置源数据区域,语法如下:

expression.SetSourceData(Source, PlotBy)

参数a)expression是必需的,该表达式返回一个Chart对象。

参数b)Source是可选的,源数据的区域。

参数c)PlotBy是可选的,指定数据绘制方式,可为xlColumns(系列产生在列)或xlRows(系列产生在行)。

三) 应用于Chart对象的ApplyDataLabels方法:将数据标签应用于图表中的某一数据点、某一数据系列或所有数据系列,语法如下:

expression.ApplyDataLabels(Type, LegendKey, AutoText, HasLeaderLines, ShowSeriesName, ShowCategoryName, ShowValue, ShowPercentage, ShowBubbleSize, Separator)

参数a) e xpression是必需的,该表达式返回一个Chart对象。

b) Type是可选的,要应用的数据标签的类型,可为下面表格所列的XlDataLabelsType 常量之一:


xlDataLabelsShowBubbleSizes 值为6


xlDataLabelsShowLabelAndPercent值为5表示占总数的百分比及数据点所属的分类。仅用于饼图或圆环图。

xlDataLabelsShowPercent值为3表示占总数的百分比。仅用于饼图或圆环图。

xlDataLabelsShowLabel值为4表示数据点所属的分类。

xlDataLabelsShowNone值为-4142表示无数据标签。

xlDataLabelsShowValue值为2表示数据点的值,若未指定本参数,默认使用此设置。

c)LegendKey是可选的,如果该值为True,则显示数据点旁的图例项标示。默认值为False。

d)AutoText是可选的,如果对象根据内容自动生成正确的文字,则该值为True。

e)HasLeaderLines是可选的,如果数据系列具有引导线,则该值为True。

f)ShowSeriesName是可选的,数据标签的系列名称。

g)ShowCategoryName是可选的,数据标签的分类名称。

f)ShowValue是可选的,数据标签的值。

h)ShowPercentage是可选的,数据标签的百分比。

i)ShowBubbleSize是可选的,数据标签的气泡尺寸。

j) Separator是可选的,数据标签的分隔符。

四:SeriesCollection方法返回图表或图表组中单个数据系列(Series对象)或所有数据系列的集合(SeriesCollection集合)的对象,语法如下:
expression.SeriesCollection(Index)

可选的Index参数指定数据系列的名称或编号。

五:DataLabels方法则返回代表数据系列中的单个数据标签(DataLabel对象)或所有数据标签的集合(DataLabels集合)的对象,语法如下:

expression.DataLabels(Index)

可选的Index参数指定数据系列中的数据标签的编号。