View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Jon Peltier Jon Peltier is offline
external usenet poster
 
Posts: 6,582
Default add new chart in 2007

ActiveSheet.Shapes.AddChart() is new in 2007. I presume your citation of
Excel 2003 is a typo.

I have not used this new syntax enough to have tripped over all of the
possible problems with it. You could go back to Excel 2003 syntax, which is
still valid:

With ActiveSheet.ChartObjects.Add({left, top, width, height}).Chart
.SetSourceData Source:={range}, PlotBy:=xlColumns
.etc
End With

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Tutorials and Custom Solutions
Peltier Technical Services, Inc. - http://PeltierTech.com
_______

"JNW" wrote in message
...
The code below is from xl2003. This created a nice chart. There were 5
values in one column cluster. The headers were on row 5 the values on row
8.

Is this possibe to recreate? I've looked through Help, and the object
browser to no avail. The chart looks different, it won't plot by columns,
and I can't seem to move it with VBA. I've tried recording the changes,
chartobject, chartobjects, chartwizard, and more I can't remember.

I feel I am missing something simple.

Any thoughts are appreciated.

With ActiveSheet.Shapes.AddChart(ChartType:=xlColumnClu stered, _
Left:=5, _
Top:=Range("B5").End(xlDown).Offset(2, 0).Top, _
Width:=Range(Range("A5"), Range("B5").End(xlToRight)).Width
- 10, _
Height:=Range("B5").End(xlDown).Offset(23, 0).Top =
Range("B5").End(xlDown).Offset(2, 0).Top)
.Chart.SetSourceData
Source:=Union(ActiveSheet.Range(Range("B4"),
Range("C4").End(xlToRight).Offset(0, -1)), ActiveSheet.Range(Range("B8"),
Range("B8").End(xlToRight).Offset(0, -1))), PlotBy:=xlColumns
End With