ChartObjects 對象
由指定的圖表工作表、對話框工作表或工作表上的所有 ChartObject 對象組成的集合。
說明
ChartObjects 集合
使用 ChartObjects(index)(其中index 是嵌入圖表的索引號或名稱)可以返回單個對象。以下示例設置名爲“Sheet1”的工作表上嵌入圖表 Chart 1 中的圖表區圖案。
Worksheets("Sheet1").ChartObjects(1).Chart. _
CChartObjecthartArea.Format.Fill.Pattern = msoPatternLightDownwardDiagonal
ChartObject 對象
代表工作表上的嵌入圖表。
說明
ChartObject 對象充當 Chart 對象的容器。ChartObject 對象的屬性和方法控制工作表上嵌入圖表的外觀和大小。ChartObject 對象是 ChartObjects 集合的成員。ChartObjects 集合包含單一工作表上的所有嵌入圖表。
示例
以下示例設置名爲“Sheet1”的工作表上嵌入圖表 Chart 1 中的圖表區圖案。
Worksheets("Sheet1").ChartObjects(1).Chart. _
ChartArea.Format.Fill.Pattern = msoPatternLightDownwardDiagonal
當選定嵌入圖表時,其名稱顯示在“名稱”框中。使用 Name 屬性可設置或返回 ChartObject 對象的名稱。以下示例對工作表“Sheet1”上的嵌入圖表“Chart 1”使用了圓角。
Worksheets("sheet1").ChartObjects("chart 1").RoundedCorners = True
ChartObject.Name 屬性
返回一個 String 值,它代表對象的名稱。
語法
表達式.Name
表達式 一個代表 ChartObject 對象的變量。
說明
此屬性對圖表對象(嵌入式圖表)而言是隻讀的。
Chart 對象
代表工作簿中的圖表。
說明
此圖表既可以是嵌入的圖表(包含在 ChartObject 對象中),也可以是單獨的圖表工作表。
示例部分中描述了以下用於返回 Chart 對象的屬性和方法:
- Charts 方法
- ActiveChart 屬性
- ActiveSheet 屬性
示例
Charts 集合包含工作簿中每個圖表工作表的 Chart 對象。使用 Charts(index) 可以返回單個 Chart 對象,其中 index 爲圖表工作表的索引號或名稱。圖表索引號表示圖表工作表在工作簿標籤欄上的位置。Charts(1) 是工作簿中第一個(最左邊的)圖表;Charts(Charts.Count) 是最後一個(最右邊的)圖表。所有圖表工作表均包括在索引計數中,即便是隱藏工作表也是如此。圖表工作表名稱顯示在圖表工作簿標籤上。您可以使用 Name 屬性設置或返回圖表名稱。本示例將更改第一張圖表工作表中第一個系列的顏色。
Charts(1).SeriesCollection(1).Format.Fill.ForeColor.RGB = rgbRed
本示例將名爲“Sales”的圖表移至活動工作簿的尾部。
Charts("Sales").Move after:=Sheets(Sheets.Count)
Chart 對象也是 Sheets 集合的成員,此集合包含工作簿中的所有工作表(圖表工作表和工作表)。使用 Sheets(index) 可以返回單個工作表,其中index 是工作表索引號或名稱。
當圖表是活動對象時,您可以使用 ActiveChart 屬性引用它。如果用戶選擇了圖表工作表,或者用 Chart 對象的 Activate 方法或 ChartObject 對象的 Activate 方法激活了它,則該圖表工作表處於活動狀態。本示例將激活圖表工作表 1,然後設置圖表類型和名稱。
Charts(1).Activate
With ActiveChart
.Type = xlLine
.HasTitle = True
.ChartTitle.Text = "January Sales"
End With
如果用戶選擇了嵌入圖表,或者用 Activate 方法激活了包含該嵌入圖表的 ChartObject 對象,則該嵌入圖表處於活動狀態。本示例將激活工作表 1 上的嵌入圖表 1,然後設置圖表類型和名稱。請注意,在激活了嵌入圖表之後,本示例中的代碼與前一個示例中的代碼相同。通過使用 ActiveChart 屬性,您可以編寫能夠引用嵌入圖表或圖表工作表(視哪一個處於活動狀態而定)的 Visual Basic 代碼。
Worksheets(1).ChartObjects(1).Activate
ActiveChart.ChartType = xlLine
ActiveChart.HasTitle = True
ActiveChart.ChartTitle.Text = "January Sales"
當圖表工作表爲活動工作表時,可以使用 ActiveSheet 屬性來引用它。本示例使用 Activate 方法激活名爲 Chart1 的圖表工作表,然後將圖表中系列 1 的內部顏色設置爲藍色。
Charts("chart1").Activate
ActiveSheet.SeriesCollection(1).Format.Fill.ForeColor.RGB = rgbBlue
創建圖表
使用 Add 方法可創建一個新的空嵌入圖表並將它添加到集合中。使用 ChartWizard 方法可添加數據並設置新圖表的格式。以下示例創建一個新嵌入圖表,然後以折線圖形式添加單元格 A1:A20 中的數據。
Dim ch As ChartObject
Set ch = Worksheets("sheet1").ChartObjects.Add(100, 30, 400, 250)
ch.Chart.ChartWizard source:=Worksheets("sheet1").Range("a1:a20"), _
gallery:=xlLine, title:="New Chart"
ChartObjects.Add 方法
創建新的嵌入式圖表。
語法
表達式.Add(Left, Top, Width, Height)
表達式 一個代表 ChartObjects 對象的變量。
參數
名稱 | 必選/可選 | 數據類型 | 說明 |
---|---|---|---|
Left | 必選 | Double | 以磅爲單位給出新對象的初始座標,該座標是相對於工作表上單元格 A1 的左上角或圖表的左上角的座標。 |
Width | 必選 | Double | 以磅爲單位給出新對象的初始大小。 |
返回值
一個代表新嵌入式圖表的 ChartObject 對象。
示例
此示例創建新的嵌入式圖表。
Set co = Sheets("Sheet1").ChartObjects.Add(50, 40, 200, 100)
co.Chart.ChartWizard Source:=Worksheets("Sheet1").Range("A1:B2"), _
Gallery:=xlColumn, Format:=6, PlotBy:=xlColumns, _
CategoryLabels:=1, SeriesLabels:=0, HasLegend:=1
刪除圖表
使用 ChartObjects 方法返回 ChartObjects 集合。以下示例刪除名爲“Sheet1”的工作表上的所有嵌入圖表。
Worksheets("sheet1").ChartObjects.Delete
Locked 屬性不能使用 ChartObjects 集合來調用以下屬性和方法:
- Placement 屬性
- PrintObject 屬性
與早期版本不同,ChartObjects 集合現在可以讀取表示高度、寬度、左對齊和頂對齊的屬性。
source:VBA Help