FoxPro/Visual FoxPro - formato de impresion a hoja de excel

 
Vista:

formato de impresion a hoja de excel

Publicado por fporras (58 intervenciones) el 08/08/2007 01:23:00
Tengo una aplicacion que hace una automatizacion a excel, hasta aqui todo bien el problema es que tengo que estar formateando la hoja para poderla imprimir, hay alguna forma de darle formato de impresion para no tenerlo que estar haciendo manualmente con cada hoja.

utilizo vfp ver 6

Saludos y gracias por su ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:formato de impresion a hoja de excel

Publicado por Oscar Meza (78 intervenciones) el 08/08/2007 15:10:21
Hola, si existe una forma muy sencilla y trabajando con las macros de Excel, a tu mail enviare un ejemplo en un form + un video explicativo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:formato de impresion a hoja de excel

Publicado por Oscar Meza (78 intervenciones) el 08/08/2007 15:50:35
Lo siento, tu mail no existe tendras otro?,
anexo parte del codigo q utiliza macros de excel

***INICIO*******

SELECT tabla

LOCAL cErrores, lExcel,vlLinea,vlGrupo,oExcel,vlTipoBono
Release oExcel
* BUSCO UNA SESION DE EXCEL YA ACTIVA:
cErrores = ON("ERROR")
ON ERROR lExcel = .F.
oExcel = GetObject(,"excel.application")
ON ERROR &cErrores

IF !TYPE('oExcel')="O" && * NO ESTABA ACTIVA. PREPARO UNA NUEVA SESION DE EXCEL:
oExcel = CREATEOBJECT("Excel.Application")
ELSE
* Si existe el archivo y se esta utilizando lo cierro
FOR EACH x IN oExcel.Workbooks
NameFileTMP = x.Name
IF NameFileTMP = "Automation.XLS"
x.CLOSE
ENDIF
ENDFOR
ENDIF
oExcel.VISIBLE = .t. && VISUALIZO EXCEL
oExcel.Workbooks.ADD && PREPARO UN NUEVO TRABAJO DE EXCEL
oExcel.sheets.Add
*oExcel.sheets.Add &&Si queremos agregar más hojas
*oExcel.sheets.Add
*-

vrNumHojas = oExcel.sheets.count() &&Cantidad de hojas en el libro

IF vrNumHojas > 1
oExcel.sheets(1).select
ELSE
oWorksheet1 = oExcel.Worksheets[1]
oExcel.Worksheets.Add(,oWorksheet1,1,)
ENDIF

vrNumHojas = oExcel.sheets.count()

IF vrNumHojas = 1
oWorksheet1 = oExcel.Worksheets[2]
oExcel.Worksheets.Add(,oWorksheet1,1,)
ENDIF

vrNuPag = 1
***************
oExcel.sheets(vrNuPag).select &&Seleccionamos la hoja 1
oExcel.ActiveSheet.name = "Automation con Excel" &&Ponemos título a la hoja
***************

vrRows = 4
WITH oExcel
.Cells(vrRows,1) = [Compañía]
.Cells(vrRows,2) = [Contacto]
.Cells(vrRows,3) = [Título]
.Cells(vrRows,4) = [Dirección]

.Range([A4:D4]).Select
.Range([A4:D4]).Font.Name = [Arial]
.Range([A4:D4]).Font.Size = 8
.Range([A4:D4]).Font.Bold = .T.

.RANGE([A4:D4]).Borders(1).weight=2 && Izquierdo
.RANGE([A4:D4]).Borders(2).weight=2 && Derecho
.RANGE([A4:D4]).Borders(3).weight=2 && Arriba
.RANGE([A4:D4]).Borders(4).weight=2 && Abajo
.Range([A4:D4]).Interior.Color = RGB(220,220,220) && RGB(192,192,192) && Light Gray

SELECT tabla
GO Top
DO While !Eof()
vrRows = vrRows + 1
.Cells(vrRows,1) = ['] + Company
.Cells(vrRows,2) = ['] + Contact
.Cells(vrRows,3) = Title
.Cells(vrRows,4) = Address

Skip
ENDDO

.Cells.Select
.Cells.EntireColumn.AutoFit
.ActiveWindow.SmallScroll(-21)

.Range("A5").Select
.Range(.Selection, .Selection.End(-4161)).Select
.Range(.Selection, .Selection.End(-4121)).Select
.Selection.Borders(5).LineStyle = -4142
.Selection.Borders(6).LineStyle = -4142
With .Selection.Borders(7)
.LineStyle = 1
.Weight = -4138
.ColorIndex = -4105
EndWith
With .Selection.Borders(8)
.LineStyle = 1
.Weight = -4138
.ColorIndex = -4105
EndWith
With .Selection.Borders(9)
.LineStyle = 1
.Weight = -4138
.ColorIndex = -4105
EndWith
With .Selection.Borders(10)
.LineStyle = 1
.Weight = -4138
.ColorIndex = -4105
EndWith
With .Selection.Borders(11)
.LineStyle = 1
.Weight = 1
.ColorIndex = -4105
EndWith
With .Selection.Borders(12)
.LineStyle = 1
.Weight = 1
.ColorIndex = -4105
EndWith

.ActiveWindow.View = 2
.ActiveSheet.VPageBreaks(1).DragOff(-4161,1)
.ActiveWindow.View = 1
.ActiveWindow.SelectedSheets.PrintPreview
ENDWITH



oExcel.VISIBLE = .t. && VISUALIZO EXCEL
Release oExcel
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:formato de impresion a hoja de excel

Publicado por fporras (33 intervenciones) el 08/08/2007 17:50:01
Oscar te acabo de enviar un correo de gmail , pero tambien tengo este otro [email protected]

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Pepe
Val: 2
Ha aumentado su posición en 7 puestos en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

RE:formato de impresion a hoja de excel

Publicado por Pepe (1 intervención) el 07/06/2018 23:56:55
Hola, veo que esta respuesta tiene muchos años pero no he podido encontrar una solución a los siguiente:
El sig. código no me lo acepta, alguien sabrá porque?

oExcel.ActiveSheet.name = "Nombre"
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

RE:formato de impresion a hoja de excel

Publicado por Fidel José (657 intervenciones) el 08/06/2018 02:12:54
Prueba creando un objeto Sheet. En el ejemplo toCust_Sent es un objeto que tiene las instrucciones para crear una hoja en Microsoft Excel
1
2
3
4
5
6
loExcel = NEWOBJECT("Excel.Application")
loBook = loExcel.workbooks.ADD()
loSheet = loExcel.ActiveSheet
IF VARTYPE(toCust_Sent.cNameSheet)="C" AND !EMPTY(toCust_Sent.cNameSheet)
    loSheet.Name = toCust_Sent.cNameSheet
ENDIF
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar