VBA常用技巧代码解析
示例代码如下:
#001 Sub ChartsAdd()
#002 Dim myChart As ChartObject #003 Dim i As Integer #004 Dim R As Integer #005 Dim m As Integer
#006 R = Sheet1.Range(\#007 m = Abs(Int(-(R / 4))) #008 Sheet2.ChartObjects.Delete #009 For i = 1 To R
#010 Set myChart = Sheet2.ChartObjects.Add _
#011 (Left:=(((i - 1) Mod m) + 1) * 350 - 320, _ #012 Top:=((i - 1) \\ m + 1) * 220 - 210, _ #013 Width:=330, Height:=210) #014 With myChart.Chart
#015 .ChartType = xlColumnClustered
#016 .SetSourceData Source:=Sheet1.Range(\- 1), _
#017 PlotBy:=xlRows
#018 With .SeriesCollection(1)
#019 .XValues = Sheet1.Range(\
#020 .Name = Sheet1.Range(\
#021 .ApplyDataLabels AutoText:=True, ShowValue:=True #022 .DataLabels.Font.Size = 10 #023 End With
#024 .HasLegend = False #025 With .ChartTitle #026 .Left = 5 #027 .Top = 1
#028 .Font.Size = 14 #029 .Font.Name = \华文行楷\#030 End With
26
VBA常用技巧代码解析
#031 With .PlotArea.Interior #032 .ColorIndex = 2
#033 .PatternColorIndex = 1 #034 .Pattern = xlSolid #035 End With
#036 .Axes(xlCategory).TickLabels.Font.Size = 10 #037 .Axes(xlValue).TickLabels.Font.Size = 10 #038 End With #039 Next
#040 Sheet2.Select
#041 Set myChart = Nothing #042 End Sub
代码解析:
ChartsAdd过程根据数据工作表A列的人数在图表工作表中创建图表并分4行排列整齐。
第6行代码取得数据工作表中需要创建图表的人数。
第7行代码计算图表工作表每行需要排列的图表数目,共分4行排列。使用Int函数返回图表数目除4行后的整数部分,使用负值是为了向上取整数,最后使用Abs函数返回绝对值,将负值转化为正值。
第8行代码使用Delete方法删除图表工作表中存在的所有图表。
第9行代码开始For...Next循环,循环的终值由需要创建的图表数目决定。
第10行到第13行代码使用Add方法在图表工作表中创建嵌入的图表,关于应用于ChartObjects对象的Add方法请参阅技巧8 。其中第11、12行代码根据循环计数器的数值设置新创建图表的Left和Top属性使之依次排列。第13行代码设置图表的大小。
第15行代码设置新创建图表的类型。
第16、17行代码根据循环计数器的数值分别设置新创建图表的数据源。 第18行到第23行代码设置图表第一个数据系列的名称、数据标签和字体格式。 第24行代码删除图表中的图例。 第25行到第30行代码设置图表的标题。 第31行到第35行代码设置图表的绘图区。 第36、37行代码设置图表坐标轴的字体大小。 关于图表的设置请参阅技巧8 。
运行ChartsAdd过程图表工作表中如所示。
27
VBA常用技巧代码解析
图 11-2 图表工作表
28
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库Excel VBA常用技巧 第04章 shape及Chart对象(6)在线全文阅读。
相关推荐: