View Single Post
  #4  
Old June 10th, 2004, 03:27 AM
Tushar Mehta
external usenet poster
 
Posts: n/a
Default macro to create charts in worksheets with arbitrary names

The Charts.Add creates a new chart in its own sheet. ActiveSheet at
that point refers to the newly minted chartsheet!

Use something like the untested:

dim SrcSheet as worksheet, aChart as chart
set srcsheet=activesheet
set achart=charts.add
achart.SetSourceData Source:=srcsheet.Range("G2:H11")
....

--
Regards,

Tushar Mehta
www.tushar-mehta.com
Excel, PowerPoint, and VBA add-ins, tutorials
Custom MS Office productivity solutions

In article ,
says...
Tried that, too--to no avail!

z.entropic

-----Original Message-----
Excel doesn't have an ActiveWorksheet, but it does have

an ActiveSheet.

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

z.entropic wrote:

I'm trying to write a macro to create and modify charts

in
spreadsheets with many worksheets. The problem I

cannot
solve is that the macro uses the current worksheet name
(here Channel_1) in the code, as in the following short
example:

' Keyboard Shortcut: Ctrl+a
'
Range("G2:H11").Select
Charts.Add
ActiveChart.ChartType = xlXYScatterLinesNoMarkers
ActiveChart.SetSourceData Source:=Sheets
("Channel_1").Range("G2:H11")
ActiveChart.Location Whe=xlLocationAsObject,
Name:="Channel_1"
End Sub

which prevents it from running in a different

worksheet. I
tried invented statements like .ActiveWorksheet. etc,

but
it didn't work...

How to make the worksheet name generic to the macro
without having to rename the worksheet before the macro

is
run?

z.entropic


.