怎么用VBA在excel中指定位置画图表? 如怎么用VBA在 A7:G13位置画出图标

用下面代码可以在A7:G13位置生成图表,图表的数据源是sheet2表的A1:B5
Sub 在指定位置生成图表()
Set ab = Range("a7:g13") '生成图表的位置
Set bbb = ActiveSheet.ChartObjects.Add(0, 0, 0, 0)
bbb.Chart.ChartType = xlColumnClustered '柱形图
bbb.Chart.SetSourceData Source:=Sheets("Sheet2").Range("A1:B5") '数据源
With bbb
.Top = ab.Top
.Left = ab.Left
.Width = ab.Width
.Height = ab.Height
End With
End Sub





''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''


Sub Macro1()

'

' Macro1 Macro

' 宏由 xtu 录制,时间: 2013/5/17

'


'

   'Selection.ColumnWidth = 18.38




Dim myData As String, sh As String


'定义变量myData, sh为字符型


myData = Selection.Address


'设置变量myData为当前选取的单元格区域


sh = ActiveSheet.Name


'设置变量sh为当前工作表的名称






Charts.Add


'添加图表


ActiveChart.ChartType = xlColumnClustered


'图表类型为柱形图


ActiveChart.SetSourceData Source:=Sheets(sh).Range(myData), PlotBy:=xlColumns


'设置图表数据源为myData(当前选取的单元格区域),数据系列为数据源中的列。


ActiveChart.Location Where:=xlLocationAsObject, Name:=sh


'设置图表的位置是当前工作表sh




With ActiveChart


'设置图表的各项参数


.HasTitle = True


'有图表标题


.ChartTitle.Characters.Text = "Snood 图表标题"


'图表标题的文字


.Axes(xlCategory, xlPrimary).HasTitle = True


'有主要横坐标标题


.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "主要横坐标"


'设置主要横坐标标题的文字


.Axes(xlValue, xlPrimary).HasTitle = True


'有主要纵坐标标题


.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "主要纵坐标"


'设置主要纵坐标标题的文字


End With


'结束设置图表的参数




ActiveChart.ChartArea.Select

End Sub



你可能感兴趣的:(VBA)