欢迎来到天天文库
浏览记录
ID:55931216
大小:104.00 KB
页数:4页
时间:2020-06-16
《Excel VBA实例教程 #060:使用VBA自动生成图表.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、在实际工作中我们常用图表来表现数据间的某种相对关系,一般采用手工插入的方式,而使用VBA代码可以在工作表中自动生成图表,如下面的示例代码。1.SubChartAdd()2.DimmyRangeAsRange3.DimmyChartAsChartObject4.DimRAsInteger5.WithSheet16..ChartObjects.Delete7.R=.Range("A65536").End(xlUp).Row8.SetmyRange=.Range("A"&1&":B"&R)9.SetmyChart=.ChartObje
2、cts.Add(120,40,400,250)10.WithmyChart.Chart11..ChartType=xlColumnClustered12..SetSourceDataSource:=myRange,PlotBy:=xlColumns13..ApplyDataLabelsShowValue:=True14..HasTitle=True15..ChartTitle.Text="图表制作示例"16.With.ChartTitle.Font17..Size=2018..ColorIndex=319..Name="华文新魏
3、"20.EndWith21.With.ChartArea.Interior22..ColorIndex=823..PatternColorIndex=124..Pattern=xlSolid25.EndWith26.With.PlotArea.Interior27..ColorIndex=3528..PatternColorIndex=129..Pattern=xlSolid30.EndWith31..SeriesCollection(1).DataLabels.Delete32.With.SeriesCollection(2)
4、.DataLabels.Font33..Size=1034..ColorIndex=535.EndWith36.EndWith37.EndWith38.SetmyRange=Nothing39.SetmyChart=Nothing40.EndSub代码解析:ChartAdd过程在工作表中自动生成图表,图表类型为簇状柱形图。第6行代码使用Delete方法删除工作表中已经存在的图表,而ChartObjects方法返回代表工作表中单个嵌入图表(ChartObject对象)或所有嵌入图表的集合(ChartObjects对象)的对象,语法
5、如下:expression.ChartObjects(Index)其中参数Index是可选的,指定图表的名称或号码。该参数可以是数组,用于指定多个图表,因为示例中只有一个图表,所以无需指定其Index参数。第8行代码指定图表的数据源。第9行代码使用Add方法创建一个新图表,应用于ChartObjects对象的Add方法创建新的嵌入图表,语法如下:expression.Add(Left,Top,Width,Height)参数Left、Top是必需的,以磅为单位给出新对象的初始坐标,该坐标是相对于工作表上单元格A1的左上角或图表的左
6、上角的坐标。参数Width、Height是必需,以磅为单位给出新对象的初始大小。第10行代码使用Chart属性返回新创建的图表,应用于ChartObject对象的Chart属性返回一个Chart对象,该对象代表指定对象所包含的图表。第11行代码指定新创建图表的图表类型,应用于Chart对象的ChartType属性返回或设置图表的类型,可以为XlChartType常量之一,具体请参阅VBA帮助。本例中设置为xlColumnClustered即图表类型为簇状柱形图。第12行代码指定图表的数据源和绘图方式,应用于Chart对象的Set
7、SourceData方法为指定图表设置源数据区域,语法如下:expression.SetSourceData(Source,PlotBy)参数expression是必需的,该表达式返回一个Chart对象。参数Source是可选的,源数据的区域。参数PlotBy是可选的,指定数据绘制方式,可为xlColumns(系列产生在列)或xlRows(系列产生在行)。第13行代码使用ApplyDataLabels方法使图表显示数据标签和数据点的值,应用于Chart对象的ApplyDataLabels方法将数据标签应用于图表中的某一数据点、某
8、一数据系列或所有数据系列,语法如下:expression.ApplyDataLabels(Type,LegendKey,AutoText,HasLeaderLines,ShowSeriesName,ShowCategoryName,ShowValue,ShowP
此文档下载收益归作者所有