绘图区
绘图区是图表的主体,包含折线、条形、面积、气泡等。
所有的代码以cht开始,假设已经使用上面介绍的代码引用了图表。
绘图区的背景颜色:
代码语言:javascript复制'设置绘图区的背景颜色
cht.PlotArea.Format.Fill.ForeColor.RGB = RGB(255, 0, 0)
'设置绘图区为无背景色
cht.PlotArea.Format.Fill.Visible = msoFalse
设置绘图区的位置:
代码语言:javascript复制'设置绘图区的大小和位置. 顶部和左侧是相对于绘图区.
cht.PlotArea.Left = 20
cht.PlotArea.Top = 20
cht.PlotArea.Width = 200
cht.PlotArea.Height = 150
图表系列
图表系列是每个类别的单独线条、条形和区域。
所有代码以srs开始,假设图表系列已被赋值给变量。
添加新的图表系列:
代码语言:javascript复制'添加新的图表系列
Set srs = cht.SeriesCollection.NewSeries
srs.Values = "=Sheet1!$C$2:$C$6"
srs.Name = "=""新系列"""
'当使用XY散点图时,对X坐标轴设置值
srs.XValues = "=Sheet1!$D$2:$D$6"
引用图表系列:
设置系列变量包括图表系列:
1=第一个图表系列
2=第二个图表系列
依此类推。
代码语言:javascript复制Dim srs As Series
Set srs = cht.SeriesCollection(1)
通过名称引用图表系列:
代码语言:javascript复制Dim srs As Series
Set srs = cht.SeriesCollection("系列名称")
删除图表系列:
代码语言:javascript复制'删除图表系列
srs.Delete
遍历每一图表系列:
代码语言:javascript复制Dim srs As Series
For Each srs In cht.SeriesCollection
'操作系列的代码
Next srs
改变图表系列数据:
代码语言:javascript复制'改变系列源数据和名称
srs.Values = "=Sheet1!$C$2:$C$6"
srs.Name = "=""改变系列名称"""
改变填充或线条颜色:
代码语言:javascript复制'改变填充颜色
srs.Format.Fill.ForeColor.RGB = RGB(255, 0, 0)
'改变线条颜色
srs.Format.Line.ForeColor.RGB = RGB(255, 0, 0)
更改可见性:
代码语言:javascript复制‘更改线的可见性
srs.Format.Line.Visible = msoTrue
改变线条粗细:
代码语言:javascript复制srs.Format.Line.Weight = 10
改变线条样式:
代码语言:javascript复制srs.Format.Line.DashStyle = msoLineDash
srs.Format.Line.DashStyle = msoLineSolid
srs.Format.Line.DashStyle = msoLineSysDot
srs.Format.Line.DashStyle = msoLineSysDash
srs.Format.Line.DashStyle = msoLineDashDot
srs.Format.Line.DashStyle = msoLineLongDash
srs.Format.Line.DashStyle = msoLineLongDashDot
srs.Format.Line.DashStyle = msoLineLongDashDotDot
格式化标记:
代码语言:javascript复制'改变标记类型
srs.MarkerStyle = xlMarkerStyleAutomatic
srs.MarkerStyle = xlMarkerStyleCircle
srs.MarkerStyle = xlMarkerStyleDash
srs.MarkerStyle = xlMarkerStyleDiamond
srs.MarkerStyle = xlMarkerStyleDot
srs.MarkerStyle = xlMarkerStyleNone
'改变标记边框颜色
srs.MarkerForegroundColor = RGB(255, 0, 0)
'改变标记填充颜色
srs.MarkerBackgroundColor = RGB(255, 0, 0)
'改变标记大小
srs.MarkerSize = 8