AddDiagram Not woring in Excel 2007

S

shilpa r

Hi,

I am trying to insert a diagram using adddiagram it is showing the
error in excel 2007 same code works in excel 2003

My code is below

Dim wksActiveSheet As Worksheet
Dim shDiagram As Shape

Set wksActiveSheet = ActiveSheet
Set shDiagram = wksActiveSheet.Shapes.AddDiagram( _
Type:=msoDiagramRadial, _
Left:=20, Top:=40, _
Width:=400, Height:=200)

Any ideas on how to
programatically add a diagram in excel 2007 ?

Thanks

*** Sent via Developersdex http://www.developersdex.com ***
 
J

Jim Rech

Your code does run in Excel 2003 and fail in 2007. The AddDiagram method of
the Shapes object appears to have been "deprecated" as it no longer appears
in the Object Browser (unless you display hidden members) and it certainly
seems to be broken. MS totally revamped the drawing engine in 2007 and
you'll have to find a new way to do what you want in 2007, if it is even
possible. Can you manually create what you want in 2007? Unfortunately,
even if you can, the macro recorder will not record your actions so you'll
have to devise the code to do it by studying the object model. Or maybe Jon
Peltier can help<g>.

--
Jim
|
|
| Hi,
|
| I am trying to insert a diagram using adddiagram it is showing the
| error in excel 2007 same code works in excel 2003
|
| My code is below
|
| Dim wksActiveSheet As Worksheet
| Dim shDiagram As Shape
|
| Set wksActiveSheet = ActiveSheet
| Set shDiagram = wksActiveSheet.Shapes.AddDiagram( _
| Type:=msoDiagramRadial, _
| Left:=20, Top:=40, _
| Width:=400, Height:=200)
|
| Any ideas on how to
| programatically add a diagram in excel 2007 ?
|
| Thanks
|
| *** Sent via Developersdex http://www.developersdex.com ***
 
B

Bob Flanagan

On a hidden sheet in your workbook / add-in insert the diagram while in
Excel 2003. Then just copy it when needed in Excel 2007

Robert Flanagan
http://www.add-ins.com
Productivity add-ins and downloadable books on VB macros for Excel
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top