jueves, 27 de junio de 2019

Como Crear Gráficos en Excel desde VFP





Dedicamos este ejemplo a todos aquellas personas que han mostrado el interés de querer saber como desarrollar este tipo gráficos en Excel desde Visual Foxpro.

Hoy presentamos dos(2) pequeños ejemplos que te ayudarán a entender mejor como se desarrollan estos tipos de procedimientos.

Existen muchas formas de desarrollar los diferentes tipos de Gráficos en Excel y hoy podremos observar  dos (2) maneras distintas de elaborarlos.

Aún cuando ya existen otros tipos de gráficos cuya resolución suelen ser mucho mejor que las que ofrecen los gráficos en Excel, muchas personas siguen realizando este tipo de procedimientos.

En el ejemplo1 podrás ver  el tipo de Barra Vertical mostrando 3 Barras según sus valores. Estos valores pueden ser sustituidos por los datos suministrados por tus tables , de igual forma puedes incrementar el número de las columnas a mostrar en el gráfico.

EjemploExcel1.prg
Local objXL, objXLchart, intRotate
objXL = Createobject("Excel.Application")
objXL.Workbooks.Add
objXL.Cells(1,1).Value = 50
objXL.Cells(1,2).Value = 10
objXL.Cells(1,3).Value = 15
objXL.Range("A1:C1").Select
objXLchart = objXL.Charts.Add()
objXL.Visible = .T.
objXLchart.Type = -4100
For intRotate = 5 To 180 Step 5
      objXLchart.Rotation = intRotate
Next
For intRotate = 175 To 0 Step -5
      objXLchart.Rotation = intRotate
Next



EjemploExcel2.prg

CREATE CURSOR tmp (ccountry C(20), nvalue N(2))

APPEND BLANK
REPLACE ccountry WITH "Netherlands, The", nvalue WITH 10
APPEND BLANK
REPLACE ccountry WITH "Belgium", nvalue WITH 5
APPEND BLANK
REPLACE ccountry WITH "Germany", nvalue WITH 2

loExcel = CREATEOBJECT("Excel.Application")
loWorkBook = loExcel.workbooks.add
loSheet = loWorkbook.worksheets(1)
SELECT tmp
GO TOP
SCAN
   loSheet.range("A" + TRANSFORM(RECNO())).numberformat = "@"
   loSheet.range("A" + TRANSFORM(RECNO())).formular1c1 = tmp.ccountry
   loSheet.range("B" + TRANSFORM(RECNO())).formular1c1 = TRANSFORM(tmp.nvalue)
ENDSCAN
loRange = loSheet.range("A1:B" + TRANSFORM(RECCOUNT()))

loChart = loExcel.charts.add
loChart.charttype = -4102
loChart.SetSourceData(loRange, 2)
loExcel.visible = .T.











0 comentarios:

Publicar un comentario