用于处理图表&图形的VBA代码大全4

2023-08-30 08:08:59 浏览数 (2)

绘图区

绘图区是图表的主体,包含折线、条形、面积、气泡等。

所有的代码以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

0 人点赞