Colocar un rango variable para un diagrama de dispersión

Quiero hacer un gráfico de dispersión de una tabla que es variable, es decir, puede variar el numero de filas que tenga.

Esta es la parte de ese problema

Primero he definido" G_Range as Range"

Y luego le he dado este valor, donde j era un contador de las filas en las que iba escribiendo.

El error me lo da en la linea 5, exactamente aquí.

Range("G_Range")

También he probado a ponerlo sin comillas.

Set G_Range = Range(Cells(3, 1), Cells(j, 2))

G_Range.Select
Charts.Add
ActiveChart.ChartType = xlXYScatterSmoothNoMarkers
ActiveChart.SetSourceData Source:=Sheets("ReduceData").Range("G_Range"), PlotBy _
:=xlColumns
ActiveChart.Location Where:=xlLocationAsNewSheet
'Just in case, the programme takes two curves, one for each column, we'd use '
' "Set G_Range = Range(Cells(3, 1), Cells(j, 1))" and then the function '
' "xlapp.Charts(1).SeriesCollection(1).XValues "'
With ActiveChart
.HasTitle = False
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory, xlPrimary).AxisTitle.Characters.Text = "Strain [%]"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue, xlPrimary).AxisTitle.Characters.Text = "Stress [MPa]"
.Legend.Delete

Respuesta
2

Para crear un rango dinámico en un gráfico no es necesario crear un macro. Dime si te interesa saberlo hacer sin macros para continuar con al respuesta.

Hol Luis,

Yo querría hacerlo por macros, ya que voy a usar la tabla en mas de una ocasión y queremos que la utilice mas de una persona.

Entonces a mi me dan un tablas de datos, la cual el programa reduce a los datos mas significativos.

Introduciéndole la cantidad de datos, solo saca los datos que son mayores de un cierto intervalo.

Pues quiero que el gráfico de dispersión salga directamente ya que explica el comportamiento del material, que es lo que representan los datos.

El gráfico debe de ser variable porque depende del numero de datos que necesite el nuevo usuario de la macro.

Lo intente asi, ya que vi algo parecido en otra respuesta de todoexpertos:

http://www.todoexpertos.com/categorias/tecnologia-e-internet/software-y-aplicaciones/microsoft-excel/respuestas/359253/grafico-en-excel-desde-vb

Espero ahora haberme explicado bien.

Gracias por responder.

Al final lo he conseguido, he puesto en el rango toda la columna de A y B, y excel me hace bien las gráficas.

Range("A:B")

Gracias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas