Cuando imprime documentos desde Word con VBA, es posible seleccionar de qué bandeja de impresora se supone que el documento debe obtener una hoja. En Excel, no tiene la oportunidad de establecer las propiedades FirstPageTray u OtherPagesTray como puede hacerlo en Word. Es posible crear una solución simple usando SendKeys.

Aquí hay dos macros de ejemplo:

Sub ChangeTray()

' selects the manual page tray without printing

Application.SendKeys "%fu%e{TAB}{DOWN}{DOWN}{TAB}m~{ESC}", True

End Sub

Sub ChangeTrayAndPrint()

' selects the manual page tray and prints the selected sheet(s)

Application.SendKeys "%fu%e{TAB}{DOWN}{DOWN}{TAB}m~~", True

End Sub

Las macros de ejemplo anteriores funcionarán con la versión noruega de Excel97 junto con una impresora de inyección de burbujas Canon.

El contenido de la cadena de texto que transfiere con SendKeys puede ser diferente de una computadora a otra, según la versión de Excel y la impresora instalada. Tendrá que editar las macros anteriores para que funcionen para usted en su computadora.

Encontrará una lista completa de caracteres especiales que reemplaza las teclas de función especiales en la ayuda incorporada para VBA, escriba SendKeys en un módulo, seleccione la palabra y presione la tecla F1.