Visual Basic - Mandar a imprimir a Excel

Life is soft - evento anual de software empresarial
 
Vista:

Mandar a imprimir a Excel

Publicado por Raptor (1 intervención) el 02/03/2006 19:29:01
Hola soy nuevo en el campo de visaul y necesitaria ver si alguien me puede ayudar. Con el programa que tengo me guardo los archivos en Excel y ahora quiero mandar a imprimir ese libro a una impresora de la red. Aca les paso el codigo que use para mandar a imprimir y funciona solo para las impresoras locales.


Private Sub Print_Click()
Dim miAppli As Excel.Application
Dim miLibro As Excel.Workbook
Dim miHoja As Excel.Worksheet
Dim BeginPage, EndPage, NumCopies, i

Set miAppli = New Excel.Application
Set miLibro = miAppli.Workbooks.Open(MiPath & "\PlanillaVacaciones.xls")
Set miHoja = miLibro.Worksheets("General")

CommonDialog1.CancelError = True
On Error GoTo ErrHandler
CommonDialog1.ShowPrinter
' Presenta el cuadro de diálogo Imprimir
BeginPage = CommonDialog1.FromPage
EndPage = CommonDialog1.ToPage
NumCopies = CommonDialog1.Copies
For i = 1 To NumCopies
' Código para enviar los datos a la impresora
' miHoja.PrintOut 0, 0, 1, 1, 1

Next i

ErrHandler:
' El usuario ha hecho clic en el botón Cancelar

miLibro.Close (False)
Set miHoja = Nothing
Set miLibro = Nothing
Set miAppli = Nothing
Exit Sub
End Sub

Gracias
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:Mandar a imprimir a Excel

Publicado por Gustavo (11 intervenciones) el 02/03/2006 23:07:18
Hola q tal colega no te compliques la vida =) con las apis mejor investiga las propiedades del libro =) Ok
Mira ya q tienes abierto el libro solo le das :
miLibro.PrintOut
ahora si solo quieres imprimir solo una hoja entonces :
miHoja.PrintOut
con esto lo mandas a la impresora predeterminada OK solo necesitas q el usuario no mueva la impresora predeterminada y te paso lo siguiente espero q te sirva
SUERTE
HASTA SIEMPRE Y ADELANTE

Sintaxis

expresión.PrintOut(From, To, Copies, Preview, ActivePrinter, PrintToFile, Collate, PrToFileName)

expresión Requerida. Una expresión que devuelve un objeto de la lista Se aplica a.

From Variant opcional. El número de la página en que se empezará a imprimir. Si este argumento se omite, la impresión comenzará por el principio.

To Variant opcional. El número de la última página a imprimir. Si este argumento se omite, la impresión finalizará en la última página.

Copies Variant opcional. El número de copias que se imprimirán. Si este argumento se omite, se imprimirá una sola copia.

Preview Variant opcional. Si es True, Microsoft Excel activará la vista preliminar antes de imprimir el objeto. False (o se omite) para imprimir el objeto inmediatamente.

ActivePrinter Variant opcional. Establece el nombre de la impresora activa.

PrintToFile Variant opcional. Si es True, se imprimirá en un archivo. Si no se especifica PrToFileName, Microsoft Excel solicitará al usuario que introduzca el nombre del archivo de salida.

Collate Variant opcional. True para intercalar múltiples copias.

PrToFileName Variant opcional. Si PrintToFile se establece en True, el argumento especificará el nombre del archivo al que desea imprimir.

Observaciones

El término "Pages" en las descripciones de From y To se refiere a las páginas impresas, no al número total de páginas de la hoja de cálculo o del libro.
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:Mandar a imprimir a Excel

Publicado por Raptor (3 intervenciones) el 03/03/2006 14:56:07
Muchas gracias Gustabo por el consejo.
El problema es que el libro de excel es muy grande y lo tengo que imprimir en un plotter que no es la impresora predeterminada. Con el codigo que te mostraba podia imprimir en una impresora local, pero a la hora de imprimir en red, me sale un error con el archivo rpcrt4.dll. Por eso decidi cambiar el metodo de impresio.

Otra vez, muchas gracias y exitos.
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:Mandar a imprimir a Excel

Publicado por GUSTAVO (218 intervenciones) el 05/03/2006 13:12:06
BUEN DIA, MIRA YA QUE COLOCASTE CHECKBOX PARA LA IMPRESION, TRABAJA CON UN HOJA ESPEJO DENTRO DEL LIBRO, O SEA, DEPENDIENDO DE LA SELECCION COPIA LA DATA CORRESPONDIENTE EN UNA HOJA APARTE Y ENVIAS ESTA HOJA A IMPRIMIR, SI LA OPCION MARCADA INVOLUCRA DOS HOJAS DE TU LIBRO REALIZA UNA RUTINA EN VISUAL QUE COPIE LA INFORMACION EN LA HOJA ESPEJO Y ESTA LA IMPRIMES, ESTO PUEDE SER UNA SOLUCION.
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:Mandar a imprimir a Excel

Publicado por Raptor (3 intervenciones) el 07/03/2006 12:27:33
Gracias Gustavo, logre solucionar el problema de impresion, lo logre con el asistente de empaquetado. Empaquete todos los archivos de sistema que utiliza la apli, de la PC original y ya no me aparece ningun error.
Igualmente muchas gracias por tu ayuda y hasta la proxima.

Daniel.
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:Mandar a imprimir a Excel

Publicado por Cesar Master (1 intervención) el 30/06/2015 04:42:47
ya e visto todo para imprimir lo unico q aora buzko dssperadamnte es imprimir las hojas a doble cara. Espero respuesta porfa. Gracias
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