Cada vez que realizo ciertas operaciones en Word o Excel (2007), estas aplicaciones intentan llegar a la impresora. Trabajo en una computadora portátil en el trabajo y en casa. Cuando estoy en casa (no conectado a la impresora de mi trabajo), a veces tengo que esperar muchos segundos para que Word / Excel responda después de realizar operaciones como poner una celda en negrita en Excel o pegar un párrafo de una página web a Word .
En Word puedo tener un pequeño mensaje en la parte inferior que dice algo como "Intentando conectarme a la impresora, presione Esc para abortar".
sin embargo
Esa opción no existe en Excel
y, a veces, si presiono Esc, Word se bloquea.
¿Hay alguna solución?
Creo que la única forma de evitar esto es tener una impresora predeterminada que no sea remota. Aquí hay un JScript simple que configurará su impresora predeterminada en "Microsoft XPS Document Writer" (suponiendo que la tenga instalada) que siempre es una impresora local que no es de hardware.
Guarde eso como
SetDefaultPrinter.js
y puede ejecutarlo usando la línea de comando:... o simplemente puede guardarlo en su escritorio y hacer doble clic para ejecutarlo.
fuente
Una opción podría ser algo como esto para cambiar automáticamente la impresora según la dirección IP. Presumiblemente podría cambiar a ninguno cuando estás en casa.
fuente
Puede ser útil cambiar su impresora predeterminada a una que esté definida localmente.
No hay una razón racional obvia (al menos para mí) para que una aplicación interactúe con una impresora al cambiar un estilo de fuente, pero si eso es lo que está sucediendo, al menos una impresora local no estará en una red no conectada.
fuente
Puede agregar un procedimiento al
ThisWorkbook/ThisDocument
módulo de su personal.xls / normal.dot que detectaría si estaba en su casa y establecería la impresora por defecto de manera adecuada.No he probado esto, pero
USERDOMAIN
(índice 30) debería ser adecuado para este propósito. El siguiente código debería darle una idea aproximada de lo que se requiere para hacer esto.Tenga en cuenta que los puertos probablemente serán diferentes en su PC, puede ejecutar el siguiente código para verificar cómo VBA cree que se llaman sus impresoras.
Esto enumerará todos los nombres de impresoras instaladas en la ventana Inmediato del Editor de Visual Basic (CTRL + G para la ventana Inmediato si no está muy familiarizado con VBA)
fuente
Si bien puede verificar la propiedad ActivePrinter en Excel 2007, no puede configurarla por alguna razón (aunque puede hacerlo en un script de Word VBA). Aquí está la solución en Excel VBA:
Es especialmente útil cambiar la impresora predeterminada si está configurada actualmente en una impresora de red, ya que se experimentan retrasos si la macro VBA modifica un libro de trabajo (eliminar columnas, etc.); parece verificar la impresora con cada cambio realizado. Para evitar esto, la impresora predeterminada debe configurarse en una impresora local durante el proceso de modificación del libro de trabajo, y luego volver nuevamente.
fuente
Otra solución es simplemente deshabilitar la visualización de saltos de página en las pestañas lentas. Puede ver un ejemplo de esto aquí: http://blogs.mccombs.utexas.edu/the-most/2010/02/17/hidepagebreaks/
La comunicación impresa a menudo se debe a que Excel intenta constantemente repaginar su hoja, lo cual es costoso y generalmente innecesario. He visto buenas mejoras de rendimiento simplemente deshabilitando esa opción.
fuente