[RESUELTO] Imprimir documento.
Publicado: Mié Ago 05, 2009 11:07 am
Hola a todos,
Utilizo una hoja de Calc para imprimir varias hojas, la hoja en mi puesto funciona bien, solo que la utilizamos varios compañeros, desde su puesto cuando acceden a ella, graban los datos pero no pueden imprimir, no da ningun error el codigo corre corecto, pero creo que me falta algo.....
utilizo este codigo:
Sub ImprimiendoCara1()
Dim oDoc As Object
Dim oHojas As Object
Dim mOpc()
Dim oRangos As Object
oDoc = ThisComponent
oHojas = oDoc.getSheets()
'Creamos el contender para los rangos
oRangos = oDoc.createInstance("com.sun.star.sheet.SheetCellRanges")
'Agregamos la primer celda de cada hoja, puede ser cualquier celda
oRangos.addRangeAddress( oHojas.getByIndex(1).getCellRangeByName("A1").getRangeAddress() ,False )
'Al seleccionar las celdas de diferentes hojas, estamos seleccionando dichas hojas
oDoc.getCurrentController.select( oRangos )
'Enviamos a imprimir
oDoc.print( mOpc() )
'llama a la macro mensaje
call Mensaje
'imprime cara2
oDoc = ThisComponent
oHojas = oDoc.getSheets()
'Creamos el contender para los rangos
oRangos = oDoc.createInstance("com.sun.star.sheet.SheetCellRanges")
'Agregamos la primer celda de cada hoja, puede ser cualquier celda
oRangos.addRangeAddress( oHojas.getByIndex(2).getCellRangeByName("A1").getRangeAddress() ,False )
'Al seleccionar las celdas de diferentes hojas, estamos seleccionando dichas hojas
oDoc.getCurrentController.select( oRangos )
'Enviamos a imprimir
oDoc.print( mOpc() )
End Sub
Sub mensaje
Dim Respuesta As Integer
Respuesta = MsgBox ( "Imprimiendo la primera hoja, cambie la hoja para imprimir la segunda hoja", 6, "OOo Basic" )
End sub
>
Arreglado= ( los margenes de impresión no estaban definidos desde el servidor.)
Utilizo una hoja de Calc para imprimir varias hojas, la hoja en mi puesto funciona bien, solo que la utilizamos varios compañeros, desde su puesto cuando acceden a ella, graban los datos pero no pueden imprimir, no da ningun error el codigo corre corecto, pero creo que me falta algo.....

utilizo este codigo:
Sub ImprimiendoCara1()
Dim oDoc As Object
Dim oHojas As Object
Dim mOpc()
Dim oRangos As Object
oDoc = ThisComponent
oHojas = oDoc.getSheets()
'Creamos el contender para los rangos
oRangos = oDoc.createInstance("com.sun.star.sheet.SheetCellRanges")
'Agregamos la primer celda de cada hoja, puede ser cualquier celda
oRangos.addRangeAddress( oHojas.getByIndex(1).getCellRangeByName("A1").getRangeAddress() ,False )
'Al seleccionar las celdas de diferentes hojas, estamos seleccionando dichas hojas
oDoc.getCurrentController.select( oRangos )
'Enviamos a imprimir
oDoc.print( mOpc() )
'llama a la macro mensaje
call Mensaje
'imprime cara2
oDoc = ThisComponent
oHojas = oDoc.getSheets()
'Creamos el contender para los rangos
oRangos = oDoc.createInstance("com.sun.star.sheet.SheetCellRanges")
'Agregamos la primer celda de cada hoja, puede ser cualquier celda
oRangos.addRangeAddress( oHojas.getByIndex(2).getCellRangeByName("A1").getRangeAddress() ,False )
'Al seleccionar las celdas de diferentes hojas, estamos seleccionando dichas hojas
oDoc.getCurrentController.select( oRangos )
'Enviamos a imprimir
oDoc.print( mOpc() )
End Sub
Sub mensaje
Dim Respuesta As Integer
Respuesta = MsgBox ( "Imprimiendo la primera hoja, cambie la hoja para imprimir la segunda hoja", 6, "OOo Basic" )
End sub
>
