C
Claus Haslauer
Hi,
I want to create a dead chart and use the following code, partly taken
from http://www.vbaexpress.com/forum/archive/index.php/t-848.html.
In each cell of A2:B45 is
=RAND()
When I execute it, I get the error
Run-time error '1004': Unable to set the XValues property to the Seriees
class
When I put ordered numbers from 1 to 44 in A2:A45 and B2:B45, it works.
Can anybody explain why?
And make it work for unordered data (my real data is not =Rand(), but
measurements).
Thanks,
Claus
Here's the code:
Private Sub CommandButton1_Click()
Dim intSeries As Integer
Dim objChart As ChartObject
'
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("F7")
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).XValues = Range("A2:A45")
ActiveChart.SeriesCollection(1).Values = Range("B2:B45")
ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1"
For Each objChart In ActiveSheet.ChartObjects
With objChart.Chart
For intSeries = 1 To .SeriesCollection.Count
With .SeriesCollection(intSeries)
.XValues = .XValues
.Values = .Values
.Name = .Name
End With
Next
End With
Next
End Sub
I want to create a dead chart and use the following code, partly taken
from http://www.vbaexpress.com/forum/archive/index.php/t-848.html.
In each cell of A2:B45 is
=RAND()
When I execute it, I get the error
Run-time error '1004': Unable to set the XValues property to the Seriees
class
When I put ordered numbers from 1 to 44 in A2:A45 and B2:B45, it works.
Can anybody explain why?
And make it work for unordered data (my real data is not =Rand(), but
measurements).
Thanks,
Claus
Here's the code:
Private Sub CommandButton1_Click()
Dim intSeries As Integer
Dim objChart As ChartObject
'
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("Sheet1").Range("F7")
ActiveChart.SeriesCollection.NewSeries
ActiveChart.SeriesCollection(1).XValues = Range("A2:A45")
ActiveChart.SeriesCollection(1).Values = Range("B2:B45")
ActiveChart.Location Where:=xlLocationAsObject, Name:="Sheet1"
For Each objChart In ActiveSheet.ChartObjects
With objChart.Chart
For intSeries = 1 To .SeriesCollection.Count
With .SeriesCollection(intSeries)
.XValues = .XValues
.Values = .Values
.Name = .Name
End With
Next
End With
Next
End Sub