¿Cómo Generar Graficos con VB?

09/08/2004 - 14:32 por gema.bernardo | Informe spam
Hola gente!

Partiendo de una informacion que tengo en una hoja excel tal y como la que
muestro más abajo, tengo que generar un grafico con un formato
predeterminado. Lo necesito hacer con visual Basic porque no me permiten
usar el asistente de graficos...

1. ¿Es posible realizar esto?
2. ¿Alguien me puede indicar alguna buena referencia (tutorial,pagina
web...) para hacerlo?

CDG stock días
1 M 316,1672843 0,63 5 1,5
2 X 381,7227387 0,76 5 1,5
3 J 496,9607348 0,99 5 1,5
4 V 569,0973681 1,13 5 1,5
5 S 536,632396 1,06 5 1,5
6 D 535,0419321 1,06 5 1,5
7 L 508,8601637 1,01 5 1,5
8 M 474,9256758 0,94 5 1,5
9 X 486,8515871 0,97 5 1,5
10 J 496,4284435 0,99 5 1,5
11 V 505,8618522 1,00 5 1,5
12 S 452,7829984 0,90 5 1,5
13 D 466,1690632 0,92 5 1,5
14 L 349,8560036 0,69 5 1,5
15 M 272,0934315 0,54 5 1,5
16 X 192,3493295 0,38 5 1,5
17 J 93,16447753 0,18 5 1,5
18 V -55,59956411 -0,11 5 1,5
19 S -8,056936813 -0,02 5 1,5
20 D 97,49040798 0,19 5 1,5
21 L 128,6683328 0,26 5 1,5
22 M 152,8030547 0,30 5 1,5
23 X 171,9585066 0,34 5 1,5
24 J 185,6355204 0,37 5 1,5
25 V 179,0818725 0,36 5 1,5
26 S 231,4093803 0,46 5 1,5
27 D 355,9951782 0,71 5 1,5
28 L 355,9031751 0,71 5 1,5
29 M 340,212615 0,68 5 1,5
30 X 306,2801929 0,61 5 1,5


días stock
max 1,1 569,0973681
min -0,1 -55,59956411


Me urge bastante... tengo la entrega muuuuuu cerquita... y estoy sudando
con la lucha que tengo para generar el grafico ufff. Muchas gracias por
adelantado si alguien puede echarme una mano.

Un saludo,
Gema Bernardo.

Preguntas similare

Leer las respuestas

#1 Anonimo
09/08/2004 - 15:35 | Informe spam
Esta rutina crea un grafico a partir de datos contenidos en
el rango A2:O???.
El grafico lo crea en la misma hoja donde estan los datos.
Tendras que adaptarla.



Private Sub HacerGrafico(Libro)

Set ExcelLibroGrafico = ExcelLibros.Open(Libro & ".xls")

For Each objHoja In ExcelLibroGrafico.Worksheets

Modelo = objHoja.Name
Sheets(Modelo).Select


ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Activate
UltimaFilaHoja = ActiveCell.Row
Rango = "A2:O" & Trim$(Str(UltimaFilaHoja))

Sheets(Modelo).ChartObjects.Delete ' borro todos
los gráficos de la hoja
Set Grafico = Sheets(Modelo).ChartObjects.Add(250,
200, 600, 400)
Grafico.Chart.ChartWizard
Source:=Worksheets(Modelo).Range(Rango), _
Gallery:=xlLine, PlotBy:=xlColumns,
CategoryLabels:=1, SeriesLabels:=1
Sheets(Modelo).ChartObjects(1).Left = 10
Sheets(Modelo).ChartObjects(1).Top = 60 +
UltimaFilaHoja * 12
Grafico.Activate
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = Modelo
.SeriesCollection(1).Name = "=""Total"""
.SeriesCollection(2).Name = "=""parcial1"""
.SeriesCollection(3).Name = "=""Parcial2"""
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory,
xlPrimary).AxisTitle.Characters.Text = "titulo eje1"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue,
xlPrimary).AxisTitle.Characters.Text = "Titulo eje2"
End With

ActiveChart.PlotArea.Select
With Selection.Border
.ColorIndex = 16
.Weight = xlThin
.LineStyle = xlContinuous
End With
With Selection.Interior
.ColorIndex = 2
.PatternColorIndex = 1
.Pattern = xlSolid
End With

' selecciono la celda a1 para quitar
' el foco del gráfico
Sheets(Modelo).Range("A1").Select

' pongo las barras al comienzo
ActiveWindow.ScrollRow = 1
ActiveWindow.ScrollColumn = 1

Next

ExcelLibroGrafico.Save
ExcelLibroGrafico.Close
Set ExcelLibroGrafico = Nothing

End Sub






Hola gente!

Partiendo de una informacion que tengo en una hoja excel


tal y como la que
muestro más abajo, tengo que generar un grafico con un formato
predeterminado. Lo necesito hacer con visual Basic porque


no me permiten
usar el asistente de graficos...

1. ¿Es posible realizar esto?
2. ¿Alguien me puede indicar alguna buena referencia


(tutorial,pagina
web...) para hacerlo?

CDG stock días
1 M 316,1672843 0,63 5 1,5
2 X 381,7227387 0,76 5 1,5
3 J 496,9607348 0,99 5 1,5
4 V 569,0973681 1,13 5 1,5
5 S 536,632396 1,06 5 1,5
6 D 535,0419321 1,06 5 1,5
7 L 508,8601637 1,01 5 1,5
8 M 474,9256758 0,94 5 1,5
9 X 486,8515871 0,97 5 1,5
10 J 496,4284435 0,99 5 1,5
11 V 505,8618522 1,00 5 1,5
12 S 452,7829984 0,90 5 1,5
13 D 466,1690632 0,92 5 1,5
14 L 349,8560036 0,69 5 1,5
15 M 272,0934315 0,54 5 1,5
16 X 192,3493295 0,38 5 1,5
17 J 93,16447753 0,18 5 1,5
18 V -55,59956411 -0,11 5 1,5
19 S -8,056936813 -0,02 5 1,5
20 D 97,49040798 0,19 5 1,5
21 L 128,6683328 0,26 5 1,5
22 M 152,8030547 0,30 5 1,5
23 X 171,9585066 0,34 5 1,5
24 J 185,6355204 0,37 5 1,5
25 V 179,0818725 0,36 5 1,5
26 S 231,4093803 0,46 5 1,5
27 D 355,9951782 0,71 5 1,5
28 L 355,9031751 0,71 5 1,5
29 M 340,212615 0,68 5 1,5
30 X 306,2801929 0,61 5 1,5


días stock
max 1,1 569,0973681
min -0,1 -55,59956411


Me urge bastante... tengo la entrega muuuuuu cerquita... y


estoy sudando
con la lucha que tengo para generar el grafico ufff.


Muchas gracias por
adelantado si alguien puede echarme una mano.

Un saludo,
Gema Bernardo.

.

Respuesta Responder a este mensaje
#2 Emilio
09/08/2004 - 18:33 | Informe spam
Hola
otra opción es usar el generador de macros para hacer el gráfico tal y como
tu quieres y luego utilizar dicha macro adaptandola si fuera necesario.

Saludos a desde Huelva
Emilio
miliuco56 ALGARROBA hotmail.com

Reglas de conducta de los grupos de noticias:
http://support.microsoft.com/defaul...newsreglas

escribió en el mensaje
news:2bbb01c47e15$c0280e00$
Esta rutina crea un grafico a partir de datos contenidos en
el rango A2:O???.
El grafico lo crea en la misma hoja donde estan los datos.
Tendras que adaptarla.



Private Sub HacerGrafico(Libro)

Set ExcelLibroGrafico = ExcelLibros.Open(Libro & ".xls")

For Each objHoja In ExcelLibroGrafico.Worksheets

Modelo = objHoja.Name
Sheets(Modelo).Select


ActiveSheet.Cells.SpecialCells(xlCellTypeLastCell).Activate
UltimaFilaHoja = ActiveCell.Row
Rango = "A2:O" & Trim$(Str(UltimaFilaHoja))

Sheets(Modelo).ChartObjects.Delete ' borro todos
los gráficos de la hoja
Set Grafico = Sheets(Modelo).ChartObjects.Add(250,
200, 600, 400)
Grafico.Chart.ChartWizard
Source:=Worksheets(Modelo).Range(Rango), _
Gallery:=xlLine, PlotBy:=xlColumns,
CategoryLabels:=1, SeriesLabels:=1
Sheets(Modelo).ChartObjects(1).Left = 10
Sheets(Modelo).ChartObjects(1).Top = 60 +
UltimaFilaHoja * 12
Grafico.Activate
With ActiveChart
.HasTitle = True
.ChartTitle.Characters.Text = Modelo
.SeriesCollection(1).Name = "=""Total"""
.SeriesCollection(2).Name = "=""parcial1"""
.SeriesCollection(3).Name = "=""Parcial2"""
.Axes(xlCategory, xlPrimary).HasTitle = True
.Axes(xlCategory,
xlPrimary).AxisTitle.Characters.Text = "titulo eje1"
.Axes(xlValue, xlPrimary).HasTitle = True
.Axes(xlValue,
xlPrimary).AxisTitle.Characters.Text = "Titulo eje2"
End With

ActiveChart.PlotArea.Select
With Selection.Border
.ColorIndex = 16
.Weight = xlThin
.LineStyle = xlContinuous
End With
With Selection.Interior
.ColorIndex = 2
.PatternColorIndex = 1
.Pattern = xlSolid
End With

' selecciono la celda a1 para quitar
' el foco del gráfico
Sheets(Modelo).Range("A1").Select

' pongo las barras al comienzo
ActiveWindow.ScrollRow = 1
ActiveWindow.ScrollColumn = 1

Next

ExcelLibroGrafico.Save
ExcelLibroGrafico.Close
Set ExcelLibroGrafico = Nothing

End Sub






Hola gente!

Partiendo de una informacion que tengo en una hoja excel


tal y como la que
muestro más abajo, tengo que generar un grafico con un formato
predeterminado. Lo necesito hacer con visual Basic porque


no me permiten
usar el asistente de graficos...

1. ¿Es posible realizar esto?
2. ¿Alguien me puede indicar alguna buena referencia


(tutorial,pagina
web...) para hacerlo?

CDG stock días
1 M 316,1672843 0,63 5 1,5
2 X 381,7227387 0,76 5 1,5
3 J 496,9607348 0,99 5 1,5
4 V 569,0973681 1,13 5 1,5
5 S 536,632396 1,06 5 1,5
6 D 535,0419321 1,06 5 1,5
7 L 508,8601637 1,01 5 1,5
8 M 474,9256758 0,94 5 1,5
9 X 486,8515871 0,97 5 1,5
10 J 496,4284435 0,99 5 1,5
11 V 505,8618522 1,00 5 1,5
12 S 452,7829984 0,90 5 1,5
13 D 466,1690632 0,92 5 1,5
14 L 349,8560036 0,69 5 1,5
15 M 272,0934315 0,54 5 1,5
16 X 192,3493295 0,38 5 1,5
17 J 93,16447753 0,18 5 1,5
18 V -55,59956411 -0,11 5 1,5
19 S -8,056936813 -0,02 5 1,5
20 D 97,49040798 0,19 5 1,5
21 L 128,6683328 0,26 5 1,5
22 M 152,8030547 0,30 5 1,5
23 X 171,9585066 0,34 5 1,5
24 J 185,6355204 0,37 5 1,5
25 V 179,0818725 0,36 5 1,5
26 S 231,4093803 0,46 5 1,5
27 D 355,9951782 0,71 5 1,5
28 L 355,9031751 0,71 5 1,5
29 M 340,212615 0,68 5 1,5
30 X 306,2801929 0,61 5 1,5


días stock
max 1,1 569,0973681
min -0,1 -55,59956411


Me urge bastante... tengo la entrega muuuuuu cerquita... y


estoy sudando
con la lucha que tengo para generar el grafico ufff.


Muchas gracias por
adelantado si alguien puede echarme una mano.

Un saludo,
Gema Bernardo.

.

Respuesta Responder a este mensaje
#3 Dean
09/08/2004 - 18:56 | Informe spam
otra opción es usar el generador de macros



Te agradeceria ampliaras este comentario, tengo poco dominio del tema de
macros, y no conozco lo del generador de macros, donde encontrarlo etc,
mi versión es la XP
Respuesta Responder a este mensaje
#4 Emilio
10/08/2004 - 17:04 | Informe spam
Hola Dean
pulsa en Herramientas > Macro > Grabar una Nueva Macro
a partir de ese momento todas aquellas operaciones que realices en excel y
hasta que pulses el botón Detener Grabación que te aparece en medio de la
pantalla, quedaran grabadas en una macro que podrás editar a tu voluntad y
ejecutar tantas veces quieras, las más de las veces, añade cosas
inncesearias, pero que no hacen nada malo, simplemente no hacen falta.

Saludos a desde Huelva
Emilio
miliuco56 ALGARROBA hotmail.com

Reglas de conducta de los grupos de noticias:
http://support.microsoft.com/defaul...newsreglas

"Dean" escribió en el mensaje
news:OP$
> otra opción es usar el generador de macros

Te agradeceria ampliaras este comentario, tengo poco dominio del tema de
macros, y no conozco lo del generador de macros, donde encontrarlo


etc,
mi versión es la XP



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida