指定工作簿或活动工作簿中所有图表工作表的集合。每个图表工作表由一个 对象代表。本集合不包括嵌入式在工作表或对话框编辑表中的图表。有关嵌入式图表的详细信息,请参阅 Chart 对象或 ChartObject 对象。 Charts 集合对象用法
可用 Charts 属性返回 Charts 集合。下例打印活动工作簿中的所有图表工作表。
Charts.PrintOut
可用 Add 方法新建图表工作表并将其添加到工作簿中。下例向活动工作簿添加新图表工作表,并将该图表工作表置于工作表“Sheet1”之后。
Charts.Add after:=Worksheets(\"sheet1\")
可组合使用 Add 方法和 ChartWizard 方法,以创建包含工作表中数据的图表工作表。下例基于工作表“Sheet1”中单元格区域“A1:A20”中的数据添加新的折线图。
With Charts.Add
.ChartWizard source:=Worksheets(\"sheet1\").Range(\"a1:a20\"), _ gallery:=xlLine, title:=\"February Data\" End With
可用 Charts(index)(其中 index 为图表工作表的编号或名称)返回单个 Chart 对象。下例将第一个图表工作表中第一个系列的颜色改为红色。
Charts(1).SeriesCollection(1).Interior.Color = RGB(255, 0, 0)
Sheets 集合包含工作簿中的所有工作表(既包括图表工作表,也包括工作表)。可用 Sheets(index) (其中 index 为工作表的名称或编号)返回单个工作表。
ChartWizard 方法
修改给定图表的属性。可用本方法迅速设定图表的格式,而不必逐个设置所有属性。本方法是非交互式的,并且仅修改指定的属性。
expression.ChartWizard(Source, Gallery, Format, PlotBy, CategoryLabels, SeriesLabels, HasLegend, Title, CategoryTitle, ValueTitle, ExtraTitle) expression 必选。该表达式返回一个 Chart 对象。 Source Variant 类型,可选。包含新图表的源数据的区域。如果省略本参数,Microsoft Excel 将修改活动图表工作表,或活动工作表中处于选定状态的嵌入式图表。
Gallery Variant 类型,可选。图表类型。可为下列 XlChartType 常量之一:xlArea、xlBar、xlColumn、xlLine、xlPie、xlRadar、xlXYScatter、xlCombination、xl3DArea、xl3DBar、xl3DColumn、xl3DLine、xl3DPie、xl3DSurface、xlDoughnut 或 xlDefaultAutoFormat。
2022-3-22 23:28 1 / 8
Format Variant 类型,可选。内置自动套用格式的编号。可为从 1 到 10 的数字,其取值依赖于图库类型。如果省略本参数,Microsoft Excel 将依据图库类型和数据源选择默认值。
PlotBy Variant 类型,可选。指定系列中的数据是来自行还是来自列。可为下列 XlRowCol 常量之一:xlRows 或 xlColumns。 CategoryLabels Variant 类型,可选。表示包含分类标志的源区域内行数或列数的整数。有效取值为从 0(零)至小于相应的分类或系列中最大值的某一数字。
SeriesLabels Variant 类型,可选。表示包含系列标志的源区域内行数或列数的整数。有效取值为从 0(零)至小于相应的分类或系列中最大值的某一数字。 HasLegend Variant 类型,可选。若指定 True,则图表将具有图例。 Title Variant 类型,可选。图表标题文字。
CategoryTitle Variant 类型,可选。分类轴标题文字。 ValueTitle Variant 类型,可选。数值轴标题文字。
ExtraTitle Variant 类型,可选。三维图表的系列轴标题,或二维图表的第二数值轴标题。 说明
如果省略 Source,并且选定内容不是活动工作表中的嵌入式图表或者活动工作表不是当前存在的图表,则该方法失败并产生错误。
Charts(\"Chart1\").ChartWizard _ Gallery:=xlLine, _
HasLegend:=True, CategoryTitle:=\"Year\
ChartObjects 方法示例
本示例向“Sheet1”的第一个嵌入式图表中添加标题。
With Worksheets(\"Sheet1\").ChartObjects(1). .HasTitle = True
.ChartTitle.Text = \"1995 Rainfall Totals by Month\" End With
本示例在“Sheet1”的第一个嵌入式图表中新建一个系列,新系列的数据源为“Sheet1”的“B1:B10”区域。
Worksheets(\"Sheet1\").ChartObjects(1).Activate ActiveChart.SeriesCollection.Add _
source:=Worksheets(\"Sheet1\").Range(\"B1:B10\")
本示例清除“Sheet1”的第一个嵌入式图表的格式设置。
Worksheets(\"Sheet1\").ChartObjects(1)..ChartArea.ClearFormats
2022-3-22 23:28 2 / 8
ChartGroups 集合对象
指定图表中所有 ChartGroup 对象的集合。每个 ChartGroup 对象代表图表中用同一格式绘制的一个或多个数据系列。一个图表包含一个或多个图表组,一个图表组包含一个或多个数据系列,一个数据系列包含一个或多个数据点。例如,单个图表可能既包含折线图图表组(其中包含所有用折线图格式绘制的数据系列),也包含条形图图表组(其中包含所有用条形图格式绘制的数据系列)。 ChartGroups 集合对象用法
可用 ChartGroups 方法返回 ChartGroups 集合。下例显示第一张工作表上第一个嵌入式图表中图表组的数目。
MsgBox Worksheets(1).ChartObjects(1)..ChartGroups.Count
可用 ChartGroups(index) (其中 index 为图表组的编号)返回单个 ChartGroup 对象。下例向第一个图表工作表的第一个图表组添加垂直线。
Charts(1).ChartGroups(1).HasDropLines = True
如果图表处于活动状态,就可使用 ActiveChart 属性:
Charts(1).Activate
ActiveChart.ChartGroups(1).HasDropLines = True
因为当图表组所用的图表格式改变时,该图表组的编号可能改变,所以使用下列快捷的图表组方法返回特定的图表组更为容易。PieGroups 方法返回图表中饼图图表组的集合, LineGroups 方法返回图表中折线图图表组的集合,依此类推。使用这些方法时,都可以用编号返回单个 ChartGroup 对象或不指定编号而返回 ChartGroups 集合。下列图表组方法是有效的:
• • • • • •
AreaGroups 方法 BarGroups 方法 ColumnGroups 方法 DoughnutGroups 方法 LineGroups 方法 PieGroups 方法
对象
代表工作簿中的图表。该图表既可为嵌入式图表(包含在 ChartObject 中),也可为一个分开的图表工作表。 对象用法
2022-3-22 23:28 3 / 8
本部分将说明下列返回 对象的属性和方法:
• • • •
属性 Charts 方法 ActiveChart 属性 ActiveSheet 属性
属性
可用 属性返回 对象,该对象代表包含在 ChartObject 对象中的图表。下例设置工作表“Sheet1”上第一个嵌入式图表中图表区的图案。
Worksheets(\"sheet1\").ChartObjects(1).. _ ChartArea.Interior.Pattern = xlLightDown
Charts 方法
Charts 集合中的每个 对象代表工作簿中的一张图表工作表。使用 Charts(index)(其中 index 是该图表工作表的索引号或名称)可返回单个的 对象。下例改变第一张图表工作表中第一个序列的颜色。
Charts(1).SeriesCollection(1).Interior.Color = RGB(255, 0, 0)
图表工作表的编号表示图表工作表在工作簿的工作表标签栏上的位置。Charts(1) 是工作簿中第一个(最左边的)图表工作表; Charts(Charts.Count) 为最后一个(最右边的)图表工作表。所有的图表工作表均包括在编号序列中,即便是隐藏图表也不例外。图表工作表的名称出现在工作簿中该图表的标签上。可用Name 属性设置或返回图表名称。
下例将图表“Sales”移至活动工作簿的尾部。
Charts(\"sales\").Move after:=Sheets(Sheets.Count)
对象也是 Sheets 集合的成员。Sheets 集合包含工作簿中所有的工作表(既包括工作表,也包括图表工作表)。可用 Sheets(index) (其中 index 为工作表的编号或名称)返回单个工作表。 ActiveChart 属性
当图表为活动对象时,可用 ActiveChart 属性引用之。如果用户选定了图表工作表,或用 Activate 方法激活了图表工作表,该图表工作表就处于活动状态。下例激活第一个图表工作表,并设置图表类型和标题。
Charts(1).Activate With ActiveChart .Type = xlLine .HasTitle = True
.ChartTitle.Text = \"January Sales\" End With
如果用户选定了嵌入式图表,或用 Activate 方法激活了包含嵌入式图表的 ChartObject 对象,该嵌入式图表就处于活动状态。下例激活第一个工作表上的第一个嵌入式图表,并设置图表类型和标题。请注意,当激活嵌入式图表之后,本示例中的代码与上例中的代码相同。在 Visual Basic 代码中使用
2022-3-22 23:28 4 / 8
ActiveChart 属性,既可引用嵌入式图表,也可引用图表工作表(只要该图表处于活动状态)。
Worksheets(1).ChartObjects(1).Activate ActiveChart.Type = xlLine ActiveChart.HasTitle = True
ActiveChart.ChartTitle.Text = \"January Sales\"
ActiveSheet 属性
当图表工作表为活动工作表时,可用 ActiveSheet 属性引用之。下例使用 Activate 方法激活图表工作表“Chart1”,并将图表中第一个系列的内部颜色设置为蓝色。
Charts(\"chart1\").Activate
ActiveSheet.SeriesCollection(1).Interior.ColorIndex = 5
本示例使第一张工作表中第一张内嵌图表的分类轴使用时间刻度,并以月为基本单位。
With Worksheets(1).ChartObjects(1). With .Axes(xlCategory)
.CategoryType = xlTimeScale .BaseUnit = xlMonths End With End With
GetChartElement 方法
返回指定的 X 坐标和 Y 坐标位置上图表元素的信息。本方法稍有与众不同之处:调用时只须指定前两个参数,在本方法执行期间,由 Microsoft Excel 为其余参数赋值,本方法返回后应检验这些参数的值。 语法
expression.GetChartElement(X, Y, ElementID, Arg1, Arg2) expression 必选。该表达式返回 对象。 X Long 类型,必选。图表元素的 X 坐标。 Y Long 类型,必选。图表元素的 Y 坐标。
ElementID Long 类型,必选。本方法返回后,本参数包含指定坐标处的图表元素的 XLChartItem 值。有关详细信息,请参阅“说明”部分。
Arg1 Long 类型,必选。本方法返回后,本参数包含与图表元素相关信息。有关详细信息,请参阅“说明”部分。
2022-3-22 23:28 5 / 8
Arg2 Long 类型,必选。本方法返回后,本参数包含与图表元素相关信息。有关详细信息,请参阅“说明”部分。 说明
本方法返回的 ElementID 值决定了 Arg1 和 Arg2 所包含的信息,如下表所示。
ElementID
Arg1
xlChartArea 无 xlChartTitle 无 xlPlotArea 无 xlLegend 无 xlFloor 无 xlWalls 无 xlCorners 无 xlDataTable 无 xlSeries 系列号 xlDataLabel 系列号 xlTrendline 系列号 xlErrorBars 系列号 xlXErrorBars 系列号 xlYErrorBars 系列号 xlLegendEntry 系列号 xlLegendKey 系列号 xlAxis
坐标轴编号 xlMajorGridlines 坐标轴编号 xlMinorGridlines 坐标轴编号 xlAxisTitle 坐标轴编号 xlDisplayUnitLabel 坐标轴编号 xlUpBars 组编号 xlDownBars 组编号 xlSeriesLines
组编号
2022-3-22 23:28 6 / 8
Arg2
无 无 无 无 无 无 无 无 数据点编号 数据点编号 趋势线编号 无 无 无 无 无 坐标轴类型 坐标轴类型 坐标轴类型 坐标轴类型 坐标轴类型 无 无 无
xlHiLoLines xlDropLines xlRadarAxisLabels xlShape
xlPivotChartDropZone
组编号 组编号 组编号 形状编号 拖动区类型
无 无 无 无 无
数据透视字段编号 无
xlPivotChartFieldButton 拖动区类型 xlNothing
无
下表说明了本方法返回后 Arg1 和 Arg2 参数的含义。
参数
系列号 数据点编号
说明
表示指定系列在 Series 集合中的序号。
表示系列中指定点在 Points 集合内的偏移量。 – 1 表示选定了所有数据点。
表示系列中指定趋势线在 Trendlines 集合内的序号。 指定该坐标轴是主坐标轴还是次坐标轴。可以是下列 XlAxisGroup 常量之一:xlPrimary 或 xlSecondary。 指定坐标轴类型。可以是下列 XlAxisType 常量之一:xlCategory、xlSeriesAxis 或 xlValue。 表示指定图表组在 ChartGroups 集合内的序号。 表示指定形状在 Shapes 集合内的序号。
指定拖动区的类型:列、数据、页或行字段。可以是下列 XlPivotFieldOrientation 常量之一:xlColumnField、xlDataField、xlPageField 或 xlRowField。列和行字段常量分别指定系列和分类字段。
表示指定列(系列),数据,页或行(分类)字段在 PivotFields 集合中的偏移量。
趋势线编号 坐标轴编号
坐标轴类型
组编号 形状编号 拖动区类型
数据透视字段编号
Export 方法
2022-3-22 23:28 7 / 8
将图表以某种图形格式导出。 语法
expression.Export(FileName, FilterName, Interactive) expression 必选。该表达式返回一个 对象。 FileName String 类型,必选。导出文件名。
FilterName Variant 类型,可选。在注册表中显示的图形过滤器的语言无关的名称。
Interactive Variant 类型,可选。如果为 True 则显示包含区分过滤器选项的对话框。如果该本参数设为 False,则 Microsoft Excel 使用过滤器的默认值。默认值为 False。
Deselect 方法示例
本示例等价于在对活动图表进行处理时按下 ESC 键。本示例应在有组件(如坐标轴)被选定的图表上运行。
ActiveChart.Deselect
2022-3-22 23:28 8 / 8
因篇幅问题不能全部显示,请点此查看更多更全内容