Skip to main content

ChartObjects object

Table of contents
  1. Remarks
  2. Example

A collection of all the ChartObject objects on the specified chart sheet, dialog sheet, or worksheet.


Each ChartObject object represents an embedded chart. The ChartObject object acts as a container for a Chart object. Properties and methods for the ChartObject object control the appearance and size of the embedded chart on the sheet.


Use the ChartObjects method of the Worksheet object to return the ChartObjects collection.

The following example deletes all the embedded charts on the worksheet named Sheet1.


You cannot use the ChartObjects collection to call the following properties and methods:

  • Locked property
  • Placement property
  • PrintObject property

Unlike the previous version, the ChartObjects collection can now read the properties for height, width, left, and top.

Use the Add method to create a new, empty embedded chart and add it to the collection. Use the ChartWizard method of the Chart object to add data and format the new chart.

The following example creates a new embedded chart and then adds the data from cells A1:A20 as a line chart.

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"

Use ChartObjects (index), where index is the embedded chart index number or name, to return a single object. The following example sets the pattern for the chart area in embedded Chart 1 on the worksheet named Sheet1.

Worksheets("Sheet1").ChartObjects(1).Chart.CChartObjecthartArea.Format.Fill.Pattern = msoPatternLightDownwardDiagonal

Leave a comment

Your email address will not be published. Required fields are marked *

Format your code: <pre><code class="language-vba">place your code here</code></pre>