- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
VBA实现自动创建Excel图表
VBA实现自动创建Excel图表 Excel是一个集数据处理和图表绘制于一身的优秀软件。根据工作表的数据,利用“图表向导”可以方便快捷地绘制图表。但是当需绘制的图表数量较多时,“图表向导”的绘图方式就不那么“可爱”了。本文通过对Excel的二次开发,用Excel VBA编程实现了折线图的自动绘制。对本程序稍作修改,可用于绘制其它类型的图表
【关键词】Excel VBA 自动创建图表 折线图
1 引言
Excel是一个集数据处理和图表绘制于一身的优秀软件。运用Excel的“图表向导”来绘制图表也不算麻烦。但是,如果要绘制的图表数量很多,用“图表向导”的绘图方式来绘制图表,就不是一件令人愉快的事了
本校老师在参与《国家重点基础研究发展计划――973计划子课题――湖南省酸雨污染现状、成因及控制对策研究》项目的数据处理工作中,需要绘制湖南省十四个地市及全省pH均值和九种要求的离子(SO42-、NO3-、NH4+、Ca2+、F-、Cl-、Mg2+、Na+、K+)的离子浓度均值及[SO42-]/[NO3-]、[SO42-]/[ΣA-]、[NO3-]/[ΣA-]、([SO42-]+[NO3-])/[ΣA-] 、[Ca2+]/[ NH4+]、[[Ca2+]/[ΣB+]、[ NH4+]/[ΣB+]、[ΣA-] /[ΣB+]十年数据的逐年、逐季、逐月的变化折线图。对于这种相同数据结构的大量图表绘制,用“图表向导”来一张张绘制显然是令人生畏的,而使用Excel VBA对Excel的作图功能进行二次开发,将可大大提高工作效率
2 Excel VBA创建图表常用的方法
Excel VBA是利用Chart对象来创建图表的。Chart对象和Charts对象集最常用的方法和属性有:
2.1 Add()方法
Charts对象集的 Add()方法用于向图表集合中添加新的图表对象。例:
Set mychart = charts.Add
表示在活动图表之前插入一个新的图表,并将返回值保存在mychart对象变量中,以便需要时通过该变量来访问该图表
2.2 Location()方法
Add()方法创建的图表只存在于内存,要在工作表中看到新创建的图表,必须指定图表的显示位置。Location()方法即是指定新创建的图表的插入位置的。其语法如下:
Chart.Location(Where,Name)
Where用于指定图表的插入位置:xlLocationAsNewSheet指定新图表作为新工作表插入工作簿中,此时Name为新工作表的名称(可省略);xlLocationAsObject指定新创建的图表作为图像元素插入到工作表中,此时Name为要插入的工作表的名称
2.3 SetSourceData()方法
SetSourceData()方法用来指定作图的源数据区域。其语法为:
Chrat.SetSourceData(Source,PlotBy)
其中,source用于指定数据源,可将Range对象传说递给该参数。PlotBy用于指定数据绘制方法,如果传递系统常量xlColumns则表示数据在列上生成(系列产生在列);如果传递系统常量xLRows,则表示数据在行上生成(系列产生在行)
SetSourceData()方法虽然能很方便地指定数据源,但该方法不可以接受分散的单元格区域作为图表的数据源。当需要灵活地操纵图表的数据源时,需使用SeriesCollection()方法
2.4 SeriesCollection()方法
SeriesCollection是Series对象的集合对象。Series对象表示图表中的一个系列。系列是一个图表中用于比较的一组数据,SeriesCollection即是保存这些系列的集合。系列在不同的图表中有不同的含义。在折线图中,每条线即是一个系列,雷达图中每个区域即是一个系列,饼图只有一个系列
Series对象中常用的属性有Name、Values和XValues。其中Name?傩员硎靖孟盗械拿?称,会在图表的图例区域显示出来;Values属性表示该系列的实际值,用于确定图表中图形位置的形状;XValues属性表示该系列的横坐标值,传统在图表的横坐标上显示出来
Values和XValues属性必须用Range对象来指定,不可指定为变量的值。如:
Chrat.SeriesCollection(1).values=Rang(“B1:B5”)
Chrat.SeriesCollection(1).Xvalues=Rang(“A1:A5”)
SeriesCollection()方法可以自由地控制图表中所有的显示数据,通过它
文档评论(0)