Crear tabla con resultados para exportar a excel desde vfp9

en visual fox 9 tengo 2 tablas una de pacientes y otra de exámenes de laboratorio

el caso es que tengo que tener como resultado una tabla donde

las tablas:

cliente exámenes

lab-num lab_nom cod_id cod_id descri

001 gustavo per 152 152 amilasa

002 alan garcía 772 772 heces

así seria el resultado 885 hemograma

cliente exámenes

001 hemograma, amilasa, heces,

002 hcg, hll, vdl,

y así sucesivamente tenga esta tabla con todos los exámenes por paciente. Para exportarlo a excel

1 Respuesta

Respuesta
1

Un placer saludarte. Espero poder ayudarte.

Exportar a excel es fácil. Todo depende de como quieres recibir los datos en la hoja de xls. A como expones... simplemente es enviar los datos. ¿Encabezados? ¿Títulos? ¿Alineaciones? ¿ESO VA? El siguiente código podría servirte para enviar los datos... sin ningún formato a excel.

**=================================--**
**--Exportamos los datos a un libro--**
**--de excel, abriendo la app. --**
**===================================**
LOCAL fila, nfila
**LOCAL lnRazonSocial
nfila = 1

**========================**
**--Aperturamos el libro--**
**========================**
LError = ON('error')
ON ERROR xlapp = NULL
xlapp = GETOBJECT('Excel Application')
ON ERROR &LError
IF ISNULL(xlapp)
xlapp = CREATEOBJECT('Excel.Application')
ENDIF
**--Establecemos atributos del libre
WITH xlapp
.Visible = 'True'
.DisplayAlerts = 'False'
.Workbooks.ADD()
ENDWITH
**--//

**=========================**
**--Parámetros de la hoja--**
**=========================**
**--
xlsheet = xlapp.ActiveSheet
**--Area y formato de impresión
WITH xlsheet.PageSetup
**Margenes
.LeftMargin = XLApp.InchesToPoints(0.2)
.RightMargin = XLApp.InchesToPoints(0.393700787401575)
.TopMargin = XLApp.InchesToPoints(0.393700787401575)
.BottomMargin = XLApp.InchesToPoints(0.6)
.HeaderMargin = XLApp.InchesToPoints(0)
.FooterMargin = XLApp.InchesToPoints(0.2)
**Centrar área
.CenterHorizontally = .T.
.Orientation = 2 &&Horizontal
ENDWITH
**--//

**--Aquí seleccionamos la tabla que queremos exportar y enviamos los datos

SELECT cliente

GO TOP

SCAN

**--Exportamos el campo lab_num

xlsheet.Cells(nfila,1).Value = cliente.lab_num

**--Exportamos el campo lab_nom

xlsheet.Cells(nfila,2).Value = cliente.lab_nom

**--Exportamos cod_id

xlsheet.Cells(nfila,3).Value = cliente.cod_id

**--Saltamos a la siguiente fila, en orden
**--descendente
nfila = nfila + 1
**--//

ENDSCAN

Proba y me avisas. En la parte de seleccionar la tabla.. podrás ver que por cada registro de excel o fila mas bien xlsheet. Cells(nfila, 1 asignamos un dato del campo. Luego pasamos a nfila, 2... luego a nfila, 3... y así vas moviendo en la misma fila... el numero de columna 1, 2, 3... y le vas asignando un campo.

Luego nfila se recarga con +1 para poder pasar a otro registro o fila en excel.. y así se van exportando los datos. Vos adecua esa parte del envío y proba. El código lo podes colocar en el evento click de un botón.

Avisame cualquier cosa para ayudarte. Estoy a la orden,

Saludos! Desde Managua, Nicaragua!

GRacias amigo experto me sirvió de mucho esta orientación, y ya termine ese proyectito, disculpe por no cerrar la pregunta. mill gracias!!!!!!!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas