Grafico

05/02/2007 - 15:31 por Jiordie | Informe spam
Hola a todos, estoy borrando las series de un grafico x y, de la siguiente
forma,

For Each Ch In ActiveSheet.ChartObjects
ActiveSheet.ChartObjects(Ch.Name).Activate
For Each Se In ActiveChart.SeriesCollection
Se.Delete
Next
Next

el problema es que cuando esta borrando la última serie me sale un error que
dice, "erro en el método Delete de la clase Series"

alguien me podría decir qué debo hacer para evitar este error, o para borrar
todas las series de un gráfico sin problema?
 

Leer las respuestas

#1 Héctor Miguel
05/02/2007 - 23:03 | Informe spam
hola, alex ?

... estoy borrando las series de un grafico x y, de la siguiente forma,
For Each Ch In ActiveSheet.ChartObjects
ActiveSheet.ChartObjects(Ch.Name).Activate
For Each Se In ActiveChart.SeriesCollection
Se.Delete
Next
Next
... cuando esta borrando la ultima serie me sale un error que dice, "error en el metodo Delete de la clase Series"
... que debo hacer para evitar este error, o para borrar todas las series de un grafico sin problema?



1) ejecutando la siguiente instruccion desde la ventana de inmediato... no obtengo el error que mencionas ;)
for each se in activesheet.chartobjects(1).chart.seriescollection: se.delete: next

2) [probablemente] cuando sucede el error es cuando ya no existen series en el grafico 'seleccionado' -?-
[que -generalmente- tampoco es necesario 'seleccionar' un objeto para trabajar con sus metodos/propiedades/...]

3) prueba con algo +/- como lo siguiente:

Sub Borra_series()
Dim Ch As Byte, Se As Byte
With ActiveSheet
For Ch = 1 To .ChartObjects.Count
For Se = 1 To .ChartObjects(Ch).Chart.SeriesCollection.Count
.ChartObjects(Ch).Chart.SeriesCollection(1).Delete
Next
Next
End With
End Sub

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Preguntas similares