Excel图表制作,一直是个难点,由于其类型多,格式也复杂,涉及到的图形也比较多,所以在使用过程当中,会发现有点不知所措 。
Chart对象
本节简单介绍一下,使用VBA代码在数据表中的系列值如何设置和返回 。
首先还是要获取一个Chart对象,上节我们介绍过,Chart对象就是代表一个图表 。
一个图表里面包含了很多图片、文本 , 下面就对这些图片、文本进行设置做一个梳理 。
如下图所示:提取出图表中的年龄和姓名生成一表 。

代码
可以重点看一下代码,对照代码进行理解:Option ExplicitPrivate Sub GetSeries()Dim xChart As ObjectSet xChart = ThisWorkbook.Charts(1) '返回Chart图表工作表Dim i As Integer, n As Integern = xChart.SeriesCollection.Count '返回系列总数For i = 1 To nRange("B6").Offset(i, 0) = xChart.SeriesCollection(i).NameNext iDim xChartObject As Object, xSeries As Objectn = xChart.SeriesCollection.CountIf n >= 1 ThenFor i = 1 To nSet xSeries = xChart.SeriesCollection(i)Range("B6").Offset(i - 1, 1).Value = https://www.itzhengshu.com/excel/xSeries.NameNext iEnd IfxSeries.SelectDim x As Variant, xArr()xArr = xSeries.XValues'返回x轴值数组i = 1For Each x In xArrRange("B6").Offset(i, 0).Value = https://www.itzhengshu.com/excel/xArr(i)i = i1Next xxArr = xSeries.Values'返回系列值数组i = 1For Each x In xArrRange("B6").Offset(i, 1).Value = https://www.itzhengshu.com/excel/xArr(i)i = i1Next xEnd Sub
关键代码:
- Set xChart = ThisWorkbook.Charts(1) '返回Chart图表工作表
- Set xSeries = xChart.SeriesCollection(1)'返回第一个系列对象
- xArr = xSeries.XValues '返回x轴值数组
- xArr = xSeries.Values'返回系列值数组
- xSeries.Values = Array(222, 221, 1111)'设置系列值
- xSeries.XValues = Array("姓名一", "姓名二", "姓名三") '设置x轴系列值
Series对象方法和属性
属性
ApplyDataLabels
Application
ClearFormats
ApplyPictToEnd
Copy
ApplyPictToFront
DataLabels
ApplyPictToSides
Delete
AxisGroup
ErrorBar
BarShape
Paste
BubbleSizes
Points
ChartType
Select
Creator
Trendlines
ErrorBars
Explosion
Format
Formula
FormulaLocal
FormulaR1C1
FormulaR1C1Local
GeoMappingLevel
GeoProjectionType
Has3DEffect
HasDataLabels
HasErrorBars
HasLeaderLines
InvertColor
InvertColorIndex
InvertIfNegative
【Excel 图表制作,如何设置或返回x坐标轴,图表系列值】IsFiltered
LeaderLines
MarkerBackgroundColor
MarkerBackgroundColorIndex
MarkerForegroundColor
MarkerForegroundColorIndex
MarkerSize
MarkerStyle
Name
Parent
ParentDataLabelOption
PictureType
PictureUnit2
PlotColorIndex
PlotOrder
QuartileCalculationInclusiveMedian
RegionLabelOptions
Shadow
Smooth
Type
Values
XValues
很显然,用到了不止一个对象,有Chart、Series和SeriesCollection,三个对象 。
这三个对象分别有许多方法和属性,而这里用到了Series的xValues和Values两个 。
其它方法属性,下次再做详细介绍 。
关键是如何获取对象,并对对象的哪些属性进行修改,这样再编程序的时候就可以方便地解决我们的需求了 。
欢迎关注、收藏
---END---
