ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Trying to make loop to create series of charts in Excel 2003 (https://www.excelbanter.com/excel-programming/425051-trying-make-loop-create-series-charts-excel-2003-a.html)

JeffL

Trying to make loop to create series of charts in Excel 2003
 
I'm trying to create a loop to generate a new chart for each column in a
spreadsheet. Macro recorder creates code like this, which I want to change
to the indexed cell format:

ActiveChart.SeriesCollection(1).XValues = "=Data!R3C4:R14C4"

I've tried this, but it doesn't seem to work:

ActiveChart.SeriesCollection(1).XValues = Worksheets("Data").Range(Cells(3,
1), Cells(3, 14))

Jon Peltier

Trying to make loop to create series of charts in Excel 2003
 
When the chart is active, Excel can't find cells on it. You need something
like this:

ActiveChart.SeriesCollection(1).XValues =
Worksheets("Data").Range(Worksheets("Data").Cells( 3, 1),
Worksheets("Data").Cells(3, 14))

or

With Worksheets("Data")
ActiveChart.SeriesCollection(1).XValues = .Range(.Cells(3, 1), .Cells(3,
14))
End With

Note the dots in front of Range and Cells.

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Peltier Technical Services, Inc.
http://PeltierTech.com/WordPress/
_______


"JeffL" wrote in message
...
I'm trying to create a loop to generate a new chart for each column in a
spreadsheet. Macro recorder creates code like this, which I want to
change
to the indexed cell format:

ActiveChart.SeriesCollection(1).XValues = "=Data!R3C4:R14C4"

I've tried this, but it doesn't seem to work:

ActiveChart.SeriesCollection(1).XValues =
Worksheets("Data").Range(Cells(3,
1), Cells(3, 14))




JeffL

Trying to make loop to create series of charts in Excel 2003
 
Thanks, this does exactly what I need.

"Jon Peltier" wrote:

When the chart is active, Excel can't find cells on it. You need something
like this:

ActiveChart.SeriesCollection(1).XValues =
Worksheets("Data").Range(Worksheets("Data").Cells( 3, 1),
Worksheets("Data").Cells(3, 14))

or

With Worksheets("Data")
ActiveChart.SeriesCollection(1).XValues = .Range(.Cells(3, 1), .Cells(3,
14))
End With

Note the dots in front of Range and Cells.

- Jon
-------
Jon Peltier, Microsoft Excel MVP
Peltier Technical Services, Inc.
http://PeltierTech.com/WordPress/
_______


"JeffL" wrote in message
...
I'm trying to create a loop to generate a new chart for each column in a
spreadsheet. Macro recorder creates code like this, which I want to
change
to the indexed cell format:

ActiveChart.SeriesCollection(1).XValues = "=Data!R3C4:R14C4"

I've tried this, but it doesn't seem to work:

ActiveChart.SeriesCollection(1).XValues =
Worksheets("Data").Range(Cells(3,
1), Cells(3, 14))






All times are GMT +1. The time now is 05:02 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
ExcelBanter.com