¿Cómo cambiar la configuración de impresión a `Imprimir hojas activas` en tiempo de ejecución en lugar de Imprimir selección?

Necesito cambiar la configuración de impresión en Print Active Sheetslugar de la selección de impresión. Intenté usar la grabadora de macros, pero no capturó ningún código. Además, este código vba simple solo imprime la hoja activa, pero no cambia la configuración de impresión según sea necesario en el tiempo de ejecución.

ActiveSheet.PrintOut

De antemano, se agradece su ayuda. ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí

Answer
  1. La configuración en discusión es específica del libro de trabajo . No puede cambiarlo globalmente incluso usando otro idioma, debido a la verdad mencionada anteriormente. Quiero decir, usando un método de lenguaje específico.

  2. Pero puede hacerlo, usando VBA, simplemente ejecutando un código como el siguiente, imprimiendo dos hojas. La próxima vez, se cambiará la configuración para ese libro de trabajo específico . Obtiene lo que necesita cuando se ejecuta el código y también cambia la configuración:

Sub printActiveSheets()
   Dim wb As Workbook
   
   Set wb = ActiveWorkbook

   Sheets(Array(wb.Sheets(1).name, wb.Sheets(2).name)).PrintOut
End Sub

Imprimirá primera y segunda hoja y también hará el cambio que necesites.

Para verificar eso, imprima manualmente una selección, luego mire esa configuración específica. Se cambiará en 'Imprimir selección'. Luego, ejecute el código anterior y haga la misma verificación. Verá 'Imprimir hojas activas'. También se memorizará para ese libro de trabajo específico si lo guarda.

No es fácil cambiar esa configuración, digamos As Default, siendo válida para todos los libros abiertos. No puedo jurar que es imposible. Si lo tomo como un desafío, tal vez encuentre algunas claves de registro que se puedan manejar (como lo hace Excel) para hacerlo para todos los libros de trabajo involucrados. Pero el esfuerzo no puede ser cubierto por el resultado, creo. Esta es la forma en que funciona Excel, también creo que debería ser la esencia de la respuesta.