KutoolsforOffice — Una solución, cinco potentes herramientas.Lograr más con menos esfuerzo.Venta de marzo: 20 % de descuento

¿Cómo imprimir hojas específicas según los valores de ciertas celdas en Excel?

AutorSun Fecha de modificación

¿Ha intentado alguna vez imprimir hojas específicas según el valor de una celda? En este artículo, le ofreceremos algunos ejemplos para resolver este problema. ¡Siga leyendo si le interesa!

Imprimir hoja en función de una celda con VBA

Imprimir hoja en función de la celda adyacente con VBA


Imprimir hoja en función de una celda con VBA

Supongamos que tiene dos hojas y desea imprimir la Hoja1, la Hoja2 o ambas según el valor de la celda A1 en la Hoja1. Siga estos pasos:

En este caso, introduzca 1 para imprimir la primera hoja, 2 para imprimir la segunda hoja o 3 para imprimir ambas.

1. Introduzca 1, 2 o 3 según necesite en la celda A1 de la primera hoja y pulse las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones.

2. Haga clic en Insertar > Módulo y pegue el siguiente código en el script del Módulo. Vea la captura de pantalla:
Una captura de pantalla de la inserción de un módulo en la ventana de VBA

VBA: Imprimir hoja en función del valor de una celda

Sub PrintStuff()
'UpdayebyExtendoffice20180811
    Dim xRgVal As Variant
    Dim xSheets As Sheets
    Set xSheets = ActiveWorkbook.Worksheets
    xRgVal = xSheets(1).Range("A1").Value
    If (IsNumeric(xRgVal)) And (Len(xRgVal) = 1) Then
        Select Case xRgVal
            Case 1
                xSheets(1).PrintOut
            Case 2
                xSheets(2).PrintOut
            Case 3
                xSheets(1).PrintOut
                xSheets(2).PrintOut
            Case Else
                MsgBox "Enter1, 2 or 3 into A1 (1 print Sheet1 2 print Sheet2 3 print Sheet1 and Sheet2 ", , "KuTools For Excel"
                Exit Sub
            End Select
    Else
        Exit Sub
    End If
End Sub

Una captura de pantalla del código VBA insertado en la ventana del módulo

3. Pulse la tecla F5 para imprimir directamente la(s) hoja(s).


Imprimir hoja en función de la celda adyacente con VBA

Si tiene varias hojas en un libro y desea imprimir una o varias hojas en función de los valores de celdas de ese libro, puede proceder como se indica a continuación:

1. Cree una hoja nueva denominada Hoja de control en el libro que esté utilizando y enumere todos los nombres de hoja en la columna A (incluya o excluya la Hoja de control según sus necesidades). Vea la captura de pantalla:
Una captura de pantalla que muestra la 'Hoja de control' con los nombres de las hojas listados en la columna A en Excel

2. Escriba «imprimir» en la celda adyacente al nombre de la hoja si desea imprimirla. Consulte la captura de pantalla mostrada.
Una captura de pantalla de la 'Hoja de control' con valores de 'imprimir' introducidos en las celdas adyacentes junto a los nombres de las hojas

3. Pulse las teclas Alt + F11 para abrir la ventana de Microsoft Visual Basic para Aplicaciones y haga clic en Insertar > Módulo. Vea la captura de pantalla:
Una captura de pantalla de la inserción de un módulo en la ventana de VBA

4. Pegue el siguiente código en el Módulo y pulse la tecla F5 para ejecutar el código.

VBA: Imprimir en función de la celda adyacente

Sub CreateControlSheet()
'UpdatebyExtendoffice20170811
    Dim i As Integer
    Dim xCSheetRow As Integer
    Dim xSName As String
    Dim xCSheet As Variant
    Dim xRgVal As String
    On Error Resume Next
    xSName = "Control Sheet"
    Application.ScreenUpdating = False
    Application.DisplayAlerts = False
    Set xCSheet = ActiveWorkbook.Worksheets(xSName)
    xCSheetRow = xCSheet.Range("B65536").End(xlUp).Row
    For i = 2 To xCSheetRow
        xRgVal = xCSheet.Range("B" & i).Value
        If xRgVal = "Print" Or xRgVal = "print" Then
            If xCSheet.Range("A" & i).Value <> "" Then
                ActiveWorkbook.Worksheets(xCSheet.Range("A" & i).Value).PrintOut
            End If
        End If
    Next
    xCSheet.Delete
    ActiveWorkbook.Worksheets.Add
    ActiveSheet.Name = "Control Sheet"
    Range("A1").Select
    ActiveCell.FormulaR1C1 = "Sheet Name"
    Range("B1").Select
    ActiveCell.FormulaR1C1 = "Print?"
    For i = 1 To ActiveWorkbook.Worksheets.Count
        Range("A" & i + 1).Value = ActiveWorkbook.Worksheets(i).Name
    Next
    Cells.Columns.AutoFit
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub

Una captura de pantalla del código VBA insertado en la ventana del módulo

Tras ejecutar el código, la(s) hoja(s) se imprimirá(n) de inmediato y, al mismo tiempo, una nueva Hoja de control reemplazará a la anterior.

Consejo: Si dispone de Kutools para Excel, con su utilidad Crear tabla de enlace podrá crear rápidamente una lista con todos los nombres de hoja en una hoja nueva con un enlace accesible.

Una captura de pantalla de una Hoja de control con enlaces clicables a los nombres de las hojas tras usar Kutools

Kutools para Excel: potencie Excel con más de 300 herramientas esenciales, agilice y simplifique su trabajo, y aproveche las funciones de IA para un procesamiento de datos más inteligente y una mayor productividad.Consígalo ahora

Las mejores herramientas de productividad para Office

🤖KUTOOLS AI Asistente: Revolucione Análisis de datos basándose en:Ejecución Inteligente   |  Generar código|  Crear fórmulas personalizadas  |  Analizar datos y generar gráficos|  Invocar Funciones mejoradas
Funciones populares:Buscar, resaltar o Marcar duplicados   |  Eliminar filas en blanco   |  Combinar Columnas o celdas sin perder datos   |   Redondeo sin usar fórmulas...
Super BUSCARV:Búsqueda vertical (VLookup) con múltiples criterios  |  Búsqueda vertical (VLookup) con múltiples valores  |   Búsqueda vertical (VLookup) entre varias hojas   |   Coincidencia difusa....
Lista desplegable avanzada:Crear rápidamente una lista desplegable   |  Lista desplegable dependiente   |  Lista desplegable de selección múltiple....
Gestor de columnas:Añadir un número específico de columnas|Mover columnas|Alternar el estado de visibilidad de columnas ocultas|Comparar rangos y columnas...
Funciones destacadas:Cuadrícula de enfoque   |  Vista de diseño   |Barra de fórmulas mejorada   | Gestor de libros y hojas   |  Biblioteca de recursos(Texto automático)|  Selector de Fecha   |  Combinar Hojas de Cálculo  |  Cifrar/Descifrar celdas   | Enviar correos electrónicos desde una lista   |  Super Filtro   |   Filtro especial(Filtrar celdas con fuente en negrita/cursiva/tachado...) ...
Principales conjuntos de herramientas 15:12 Herramientasde texto(Agregar texto,Eliminar caracteres específicos, ...)|   50+Tiposde gráfico(Diagrama de Gantt, ...)|   40+ Fórmulas prácticas(Calcular la edad basada en la fecha de nacimiento, ...)|   19 Herramientasde inserción(Insertar Código QR,Insertar imagen desde ruta, ...)|   12 Herramientasde conversión(Convertir a palabras,Conversión de moneda, ...)|   7 Herramientasde combinación y división(Combinar filas avanzado,Dividir celdas, ...)|...y muchas más
Use Kutools en su idioma preferido: compatible con inglés, español, alemán, francés, chino y 40+ más idiomas.¡

Potencie sus habilidades en Excel con Kutools para Excel y experimente una eficiencia como nunca antes.Kutools para Excel ofrece más de 300 funciones avanzadas para aumentar su productividad y Ahorrar tiempo.Haga clic aquí para obtener la función que más necesita...


Office Tab aporta una interfaz con pestañas a Office y hace que su trabajo sea mucho más fácil

  • Active la edición y lectura con pestañas en Word, Excel, PowerPoint, Publisher, Access, Visio y Project.
  • Abra y cree varios documentos en nuevas pestañas dentro de la misma ventana, en lugar de hacerlo en ventanas separadas.
  • ¡Aumente su productividad en un 50 % y elimine cientos de clics del ratón cada día!

Todos los complementos de Kutools en un solo instalador.

Kutools for Office es la suite que incluye complementos para Excel, Word, Outlook y PowerPoint, además de Office Tab Pro, ideal para equipos que trabajan en distintas aplicaciones de Office.

ExcelWordOutlookTabsPowerPoint
  • Suite integral— complementos para Excel, Word, Outlook y PowerPoint + Office Tab Pro
  • Un instalador, una licencia— configuración en minutos (compatible con MSI)
  • Rendimiento mejorado en conjunto— productividad optimizada en todas las aplicaciones de Office
  • Prueba gratuita de 30 días con todas las funciones— sin registro ni tarjeta de crédito
  • La mejor relación calidad-precio— ahorre frente a la compra individual de complementos