Cómo utilizar Excel VBA para imprimir

Escrito por Jeff Grundy | Traducido por Jane Laury

Millones de propietarios de pequeñas empresas y emprendedores de todo el mundo utilizan Microsoft Excel para ayudar con las tareas comunes de contabilidad, previsión e inventario. Con las herramientas integradas de Excel, es relativamente simple enviar una hoja de cálculo o un cuadernillo de trabajo a alguien en un correo electrónico como archivo adjunto. Sin embargo, hay muchas veces que nada supera una copia con la información. Por supuesto, puedes usar la opción del menú "Archivo | Imprimir" en la barra de cinta para crear versiones impresas de la hoja de cálculo. Sin embargo, mediante el uso de Visual Basic para Aplicaciones o VBA, también puedes crear macros o botones de comando para realizar diversas tareas de impresión en Excel mucho más rápido y más eficientemente.

Activa la pestaña Programador

Inicia Microsoft Excel y abre el libro o plantilla en la que deseas programar funciones de impresión con VBA. Haz clic en "Archivo" en la cinta de Excel y luego en "Opciones".

Localiza y haz clic en el encabezamiento "Personalizar cinta de opciones" en el panel izquierdo de la ventana "Opciones de Excel". Haz clic en la casilla de verificación junto a "Programador" en la sección de Pestañas principales bajo la etiqueta "Personalizar la cinta de opciones".

Haz clic en el botón "Aceptar" para activar la pestaña "Programador" de la cinta y cerrar la ventana "Opciones de Excel". Después de hacerlo Excel mostrará la pestaña "Programador" en la cinta de forma automática.

Crea un botón de impresión con VBA

Haz clic en la pestaña "Programador" de la cinta. Haz clic en el icono "Insertar" de la flecha hacia abajo en la sección de "Controles" de la pestaña "Programador". Oprime el icono "Botón de control" bajo "Controles de formulario".

Haz clic en la celda de la hoja de cálculo en la que deseas colocar un botón de impresión. Después de hacer clic selecciona una celda, la ventana "Asignar macro" aparecerá automáticamente.

Ingresa "PrintCurrentSheet" o algo similar en el campo "Nombre de macro". No uses espacios en el nombre. Haz clic en botón "Nuevo". La ventana del editor de Visual Basic para Aplicaciones aparecerá y mostrará una nueva ventana de código.

Coloca el cursor del ratón en la línea de espacio entre los valores "PrintCurrentSheet Sub ()" y "End Sub". Escribe el siguiente comando: ActiveSheet.PrintOut

Haz clic en el icono de disquete en la barra de herramientas del editor de VBA para guardar el código. Cierra la ventana del editor de VBA.

Haz clic con el botón derecho sobre el nuevo botón de comando y resalta el valor de texto predeterminado "Botón 1". Cambia el texto de la etiqueta del botón a "Impresión rápida" u otro nombre descriptivo.

Haz clic en el botón nuevo de comando. Excel imprime la hoja de cálculo activa en la impresora predeterminada de Windows sin mostrar el cuadro de diálogo "Imprimir" normal.

Consejos

  • Puedes utilizar el mismo método para crear muchas de las funciones de impresión de Excel utilizando VBA. Los pasos para crear el botón de función de impresión son los mismos, solo la sintaxis del comando es diferente.
  • Para imprimir todas las hojas de cálculo del libro actual sin mostrar la ventana de diálogo de impresión, sustituye el comando "ActiveSheet.PrintOut" con "Worksheets.PrintOut" o "ActiveWorkbook.PrintOut" sin las comillas.
  • Puedes crear un botón de impresión rápida para que selecciones solo las celdas con el ratón usando el comando "Selection.PrintOut" en el código VBA.
  • Si deseas imprimir en una impresora específica distinta de la predeterminada de Windows, utiliza el siguiente código para el botón de comando en la ventana de código de VBA:
  • Sub QuickChangePrinter()
  • Dim sNewPrinter As String
  • sNewPrinter = ActivePrinter
  • ActivePrinter = "Enter the Windows name of the printer here"
  • Application.PrintOut FileName:=""
  • ActivePrinter = sNewPrinter
  • End Sub

Créditos de las fotos

  • Patrick Ryan/Lifesize/Getty Images