Retroceder   Foro Ayuda Excel > Dudas y consultas sobre Excel > Macros y programación VBA
Registrarse Preguntas Frecuentes Lista de Foreros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
LinkBack Herramientas Desplegado
  #1  
Antiguo 04/07/08, 16:21:55
Principiante
 
Usuario desde: jul 2008
Versión de Excel: Excel 2002
Conectado desde: Uruguay
Mensajes: 1
Predeterminado Problema con PrintForm

Hola, estoy imprimiendo unos formularios que toman datos de planilla excel, ahora, necesito imprimir en distintas impresoras y resulta que el metodo PrintForm imprime solo en la impresora predeterminada en Windows.
Para solucionar esto encontré ActivePrinter, que por definicion devuelve o establece el nombre de la impresora activa. String de Lectura/Escritura.

El problema es que simpre termina imprimiendo en la misma impresora (la predeterminada por windws, no se efectuan cambios. Alguien logra ver el problema?

Desde ya muchas gracias.
impActual = Application.ActivePrinter
impNueva = "canon pixma ip1000 en ne02:"
Application.ActivePrinter = impNueva
FormPrueba.PrintForm
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #2  
Antiguo 06/07/08, 07:25:14
Moderator
 
Usuario desde: jun 2008
Versión de Excel: Excel 2003
Conectado desde: Colombia
Mensajes: 61
Contactar con Efasor a través de MSN
Predeterminado Debes usar el API de Windows

Hola, ese tipo de configuracion solo lo puedes hacer usando el API de Windows, es decir las funciones del sistemas, eso lo logras con la función DECLARE que te permite "insertar" las funciones del SO a tu código VBA.

Ahorita estoy un poquitín ocupado y no te puedo ayudar de lleno, pero a mediados de la otra semana saco un ratico a ver como es la cosa.

Por tu cuenta puedes averiguar "Windows API" y es simplemente que te busques que función cambia la Impresora predeterminada y juegas con eso.

Suerte con eso...
__________________
Aquel que pregunta es un tonto por cinco minutos, pero el que no pregunta permanece tonto por siempre.
http://vbaycpp.blogspot.com/
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
  #3  
Antiguo 07/07/08, 03:05:43
Moderator
 
Usuario desde: jun 2008
Versión de Excel: Excel 2003
Conectado desde: Colombia
Mensajes: 61
Contactar con Efasor a través de MSN
Predeterminado

Hola prueba con esto...

Código:
Sub SetDefaultPrinter(ByVal ImpName As String) 

    Dim MyImpresora As Object       
    Set MyImpresora = CreateObject("WScript.Network")
    MyImpresora.setdefaultprinter ImpName        
      
End Function
__________________
Aquel que pregunta es un tonto por cinco minutos, pero el que no pregunta permanece tonto por siempre.
http://vbaycpp.blogspot.com/
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!
Responder Con Cita
Respuesta


Herramientas
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Trackbacks are habilitado
Pingbacks are habilitado
Refbacks are habilitado



La franja horaria es GMT +2. Ahora son las 01:32:46.


© Ayuda Excel

Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.

1 2 3 4 5 6 7