Chart Formatting
There are many objects involved to build a complete chart object like Plot Area, Legends, Title, Axis, Chart Area, Series etc. Each object has its own properties which help manipulating that specific object within chart. In this article we will try to learn formatting of a chart in Microsoft Word Document: Following is the basic chart which is created using below data source which we will take through this article:

Data Source

Format Plot Area
- Change the border line style
- make border color to white
Code example
Public Sub FormatChartArea() 'Declare document object Dim oDocument As Document 'Bind document reference Set oDocument = ActiveDocument 'inline shape object Dim oInLineShape As InlineShape 'Iterate each inline shape For Each oInLineShape In oDocument.InlineShapes 'Checks for valid chart If oInLineShape.HasChart Then 'Declare chart object Dim oChart As Chart Set oChart = oInLineShape.Chart 'Format the chart Plot area oChart.ChartArea.Border.LineStyle = xlDash oChart.PlotArea.Border.LineStyle = xlDot oChart.PlotArea.Border.Color = vbWhite 'Clean up memory Set oChart = Nothing End If Next oInLineShape 'Clean up memory Set oInLineShape = Nothing End Sub
Output

Other formatting
- Add data labels to the series
- Apply layout where Axis title will be enabled and legend moves to right
- Change chart type
Code example
Public Sub FormatOtherObjectsOfChartArea() 'Declare document object Dim oDocument As Document 'Bind document reference Set oDocument = ActiveDocument 'inline shape object Dim oInLineShape As InlineShape 'Iterate each inline shape For Each oInLineShape In oDocument.InlineShapes 'Checks for valid chart If oInLineShape.HasChart Then 'Declare chart object Dim oChart As Chart Set oChart = oInLineShape.Chart 'Format the chart Plot area oChart.ChartArea.Border.LineStyle = xlDash oChart.PlotArea.Border.LineStyle = xlDot oChart.PlotArea.Border.Color = vbWhite 'Add data labels oChart.ApplyDataLabels xlDataLabelsShowValue 'Apply Axis titles oChart.ApplyLayout 1, xl3DSurface 'Change chart type oChart.ChartType = xl3DAreaStacked 'Clean up memory Set oChart = Nothing End If Next oInLineShape 'Clean up memory Set oInLineShape = Nothing End Sub
Output

Please leave your comments or queries under comment section also please do subscribe to out blogs to keep your self upto date.