凤凰涅槃 浴火重生

EXCEL图表技巧

上一篇 / 下一篇  2011-08-12 00:44:31 / 个人分类:工具

代码解析:
       ChartAdd过程在工作表中自动生成图表,图表类型为簇状柱形图。
       第6行代码使用Delete方法删除工作表中已经存在的图表,而ChartObjects方法返回代表工作表中单个嵌入图表(ChartObject对象)或所有嵌入图表的集合(ChartObjects对象)的对象,语法如下:
expression.ChartObjects(Index)
       其中参数Index是可选的,指定图表的名称或号码。该参数可以是数组,用于指定多个图表,因为示例中只有一个图表,所以无需指定其Index参数。
       第8行代码指定图表的数据源。
        第9行代码使用Add方法创建一个新图表,应用于ChartObjects对象的Add方法创建新的嵌入图表,语法如下:
expression.Add(Left, Top, Width, Height)
       参数Left、Top是必需的,以磅为单位给出新对象的初始坐标,该坐标是相对于工作表上单元格A1的左上角或图表的左上角的坐标。
       参数Width、Height是必需,以磅为单位给出新对象的初始大小。
       第10行代码使用Chart属性返回新创建的图表,应用于ChartObject对象的Chart属性返回一个Chart对象,该对象代表指定对象所包含的图表。
       第11行代码指定新创建图表的图表类型,应用于Chart对象的ChartType属性返回或设置图表的类型,可以为XlChartType常量之一,具体请参阅VBA帮助。本例中设置为xlColumnClustered即图表类型为簇状柱形图。
       第12行代码指定图表的数据源和绘图方式,应用于Chart对象的SetSourceData方法为指定图表设置源数据区域,语法如下:
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是可选的,要应用的数据标签的类型,可为表格所列的XlDataLabelsType 常量之一。


       参数LegendKey是可选的,如果该值为True,则显示数据点旁的图例项标示。默认值为False。
       参数AutoText是可选的,如果对象根据内容自动生成正确的文字,则该值为True。
       参数HasLeaderLines是可选的,如果数据系列具有引导线,则该值为True。
       参数ShowSeriesName是可选的,数据标签的系列名称。
       参数ShowCategoryName是可选的,数据标签的分类名称。
       参数ShowValue是可选的,数据标签的值。
       参数ShowPercentage是可选的,数据标签的百分比。
       参数ShowBubbleSize是可选的,数据标签的气泡尺寸。
       参数Separator是可选的,数据标签的分隔符。
       第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行代码设置图表上第二个数据系列中的数据标签的字体格式。

 

 

 

ChartsAdd过程根据数据工作表A列的人数在图表工作表中创建图表并分4行排列整齐。
       第6行代码取得数据工作表中需要创建图表的人数。
       第7行代码计算图表工作表每行需要排列的图表数目,共分4行排列。使用Int函数返回图表数目除4行后的整数部分,使用负值是为了向上取整数,最后使用Abs函数返回绝对值,将负值转化为正值。
       第8行代码使用Delete方法删除图表工作表中存在的所有图表。
       第9行代码开始For...Next循环,循环的终值由需要创建的图表数目决定。
       第10行到第13行代码使用Add方法在图表工作表中创建嵌入的图表,关于应用于ChartObjects对象的Add方法请参阅技巧60 。其中第11、12行代码根据循环计数器的数值设置新创建图表的Left和Top属性使之依次排列。第13行代码设置图表的大小。
       第15行代码设置新创建图表的类型。
       第16、17行代码根据循环计数器的数值分别设置新创建图表的数据源。
       第18行到第23行代码设置图表第一个数据系列的名称、数据标签和字体格式。
       第24行代码删除图表中的图例。
       第25行到第30行代码设置图表的标题。
       第31行到第35行代码设置图表的绘图区。
       第36、37行代码设置图表坐标轴的字体大小。
       关于图表的设置请参阅技巧60 。
       运行ChartsAdd过程图表工作表中如图所示。

TAG:

 

评分:0

我来说两句

fly_away

fly_away

MY GOD,暴雪居然敢让我家的DK骑羊!!!

我的栏目

日历

« 2024-03-22  
     12
3456789
10111213141516
17181920212223
24252627282930
31      

数据统计

  • 访问量: 11433
  • 日志数: 23
  • 图片数: 1
  • 文件数: 2
  • 书签数: 1
  • 建立时间: 2008-12-24
  • 更新时间: 2016-05-02

RSS订阅

Open Toolbar