How do I move a chart using a macro?



Hi, all,

I have a nice little macro that creates two charts on several worksheets in
a workbook.

My problem is that it places one chart right on top of the other. I just
need to offset it enough to see both charts, or at least to remind myself
that there are two of them there.

I tried variations of the "Activechart.parent . . . ." commands I found
elsewhere on the site, but I always get the debug screen when I get there.

I'm using OFFICE 2007 and Vista.

Thank you




Robert Flanagan

Assuming you know what cell you want as the top left cell position for the
chart, you can do something like this:

Dim chtObj As ChartObject
Set chtObj = ActiveSheet.ChartObjects(1)
chtObj.Left = Cells(2, 2).Left
chtObj.Top = Cells(2, 2).Top

and for the 2nd chart, just modify to set its position.

If you type "chtObj." (don't forget the period), you will see a set of
properties, many of which you can set.

Robert Flanagan
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