Gráfico en formulario tomando datos de una hoja

26/04/2005 - 12:38 por emilio | Informe spam
Hola a tod@s,

llevo toda la mañana peleandome con esto y no doy con la tecla, estoy
intentando mostrar un gráfico en unformulario, basado en datos de una hoja,
siguiendo las indicaciones de Hector Miguel en hilos anteriores he llegado a
mostrar un gráfico con una unica serie, sin embargo cuando intento añadir
otra serie, ya no funciona, el error se produce en
".SeriesCollection(1).SetData Cc.chDimValues, Cc.chDataBound, "C2:C17"" y
dice "parámetro no valido"
Tampoco me muestra correctamente el eje de las X pues me muestra una serie
de numeros correlativos y no las fechas que hay en la columna A.
¿Alguién puede darme alguna idea?
Gracias a tod@s, el código que uso es el siguiente

Sub Actualiza()
Dim Fila As Byte, _
Col As Byte, _
Dato As Variant, _
Cc As Object

With Spreadsheet1
.Cells(1, 1) = "Fecha"
.Cells(1, 2) = "Uno"
.Cells(1, 3) = "Dos"

For Col = 2 To 4
For Fila = 8 To 25
Dato = Worksheets("Informe").Cells(Fila, Col)
.Cells(Fila - 6, Col - 1) = Dato
If Col = 2 Then
.Cells(Fila - 6, Col - 1).NumberFormat = "d-mmm-yy"
Else
.Cells(Fila - 6, Col - 1).NumberFormat = "0.00"
End If
Next
Next
End With
With ChartSpace1
.Clear
Set Cc = .Constants
Set .DataSource = Me.Spreadsheet1
.Charts.Add
With .Charts(0)
.Type = Cc.chChartTypeLine
.SetData Cc.chDimCategories, 0, "a1:a17"

.SetData Cc.chDimSeriesNames, 0, "b1"
.SeriesCollection(0).SetData Cc.chDimValues, 0, "b2:b17"
.SeriesCollection.Add
.SetData Cc.chDimSeriesNames, 0, "C1"
.SeriesCollection(1).SetData Cc.chDimValues, Cc.chDataBound, "C2:C17"

End With
End With
End Sub
 

Leer las respuestas

#1 KL
26/04/2005 - 13:33 | Informe spam
Hola Emilio,

Esto tiene mucho curro :-) Podrias enviar el fichero a mi correo electronico
para no tener que reconstruir todo el libro.

Saludos,
KL

"emilio" wrote in message
news:
Hola a ,

llevo toda la mañana peleandome con esto y no doy con la tecla, estoy
intentando mostrar un gráfico en unformulario, basado en datos de una
hoja,
siguiendo las indicaciones de Hector Miguel en hilos anteriores he llegado
a
mostrar un gráfico con una unica serie, sin embargo cuando intento añadir
otra serie, ya no funciona, el error se produce en
".SeriesCollection(1).SetData Cc.chDimValues, Cc.chDataBound, "C2:C17"" y
dice "parámetro no valido"
Tampoco me muestra correctamente el eje de las X pues me muestra una serie
de numeros correlativos y no las fechas que hay en la columna A.
¿Alguién puede darme alguna idea?
Gracias a , el código que uso es el siguiente

Sub Actualiza()
Dim Fila As Byte, _
Col As Byte, _
Dato As Variant, _
Cc As Object

With Spreadsheet1
.Cells(1, 1) = "Fecha"
.Cells(1, 2) = "Uno"
.Cells(1, 3) = "Dos"

For Col = 2 To 4
For Fila = 8 To 25
Dato = Worksheets("Informe").Cells(Fila, Col)
.Cells(Fila - 6, Col - 1) = Dato
If Col = 2 Then
.Cells(Fila - 6, Col - 1).NumberFormat = "d-mmm-yy"
Else
.Cells(Fila - 6, Col - 1).NumberFormat = "0.00"
End If
Next
Next
End With
With ChartSpace1
.Clear
Set Cc = .Constants
Set .DataSource = Me.Spreadsheet1
.Charts.Add
With .Charts(0)
.Type = Cc.chChartTypeLine
.SetData Cc.chDimCategories, 0, "a1:a17"

.SetData Cc.chDimSeriesNames, 0, "b1"
.SeriesCollection(0).SetData Cc.chDimValues, 0, "b2:b17"
.SeriesCollection.Add
.SetData Cc.chDimSeriesNames, 0, "C1"
.SeriesCollection(1).SetData Cc.chDimValues, Cc.chDataBound, "C2:C17"

End With
End With
End Sub

Preguntas similares