prucommercialre.com


Especificación de una bandeja de papel en una macro

Si utiliza macros para imprimir las hojas de trabajo, ya sabes que la macro se puede especificar la impresora real a la que se debe enviar la salida. ¿Qué pasa si desea especificar también una bandeja de papel específico que se utilizará en esa impresora? Desafortunadamente, esto llega a ser un poco de un portillo pegajosa. El problema es que cuando se hace clic en el botón Opciones en el cuadro de diálogo Configuración de página con el fin de configurar la bandeja de papel a utilizar, lo que ves es completamente bajo el control de su controlador de impresora, que no están bajo el control de Excel.

¿Qué significa esto para usted? Significa que no hay comandos que puede utilizar en una macro de Excel para especificar una bandeja de la impresora. Hay algunas soluciones que puede probar, sin embargo. La primera solución es definir simplemente diferentes definiciones de la impresora en Windows, cada uno adaptados a la utilización de una bandeja de la impresora específica. Siga estos pasos generales:

  1. Determinar el número de bandejas de papel que desea utilizar en la impresora.
  2. Definir una nueva impresora para cada bandeja de papel que desea utilizar. Por ejemplo, si desea utilizar tres bandejas de papel diferentes, definiría tres impresoras, cada uno con un nombre representativo de una bandeja de papel.
  3. Haga clic en una definición de la impresora y cambiar las propiedades de la impresora para que imprima en la bandeja de papel deseada.
  4. Repita el paso 3 para cada una de las otras definiciones de la impresora, asegurándose de especificar diferentes bandejas de papel para cada uno.

En este punto usted tiene múltiples definiciones de impresora instalados, y cada uno va a imprimir en una bandeja de papel diferente en la misma impresora. En Excel puede especificar la impresora deseada, en una macro, por lo que la impresión va a la definición de la impresora deseada, y por lo tanto a la bandeja de papel que desee. El único inconveniente de esta solución, por supuesto, es que se necesita un poco de trabajo de configuración. Si usted trabaja en una oficina con 50 usuarios, esto significa que usted tendrá que asegurarse de que todo 50 tienen cada impresora definida como se describe anteriormente.

Otra solución consiste en el uso de la instrucción SendKeys en su macro. Puede encontrar información sobre SendKeys en la ayuda en línea disponible con Excel VBA, pero lo que básicamente hace es rellenar el buffer del teclado con una serie de pulsaciones de teclas, tal como lo harían ser digitados por el usuario. Por lo tanto, teóricamente, podría configurar la macro para emular las pulsaciones de teclas que debe seguir para abrir el cuadro de diálogo Configurar página, haga clic en Opciones y seleccione una bandeja de impresora diferente.

Hay un problema potencial con SendKeys, sin embargo. Puede ser poco fiable porque no hay manera de asegurar que las pulsaciones se les va donde quieras. En un sistema operativo multi-hilo (como Windows), algún otro proceso podría intervenir y hacer fracasar los comandos. Además, si SendKeys trabaja en su computadora, puede que no funcione en la computadora de otra persona a menos que tengan la misma versión de Excel, misma impresora, y la misma versión del controlador de impresora.

ExcelTips es su fuente de capacitación rentable Microsoft Excel. Esta punta (2213) se aplica a Microsoft Excel 97, 2000, 2002, y 2003. Usted puede encontrar una versión de este consejo para la interfaz de cinta de Excel (Excel 2007 y versiones posteriores) aquí: Especificación de una bandeja de papel en una macro.