Note: The other languages of the website are Google-translated. Back to English
Iniciar sesión  \/ 
x
or
x
Regístrate  \/ 
x

or

¿Cómo imprimir ciertas páginas u hojas de trabajo según el valor de la celda en Excel?

¿Alguna vez ha intentado imprimir cierta página u hoja de trabajo basada en un valor de celda en Excel? ¿Y cómo lograrlo? Los métodos de este artículo pueden ayudarlo a resolverlo en detalle.

Imprima cierta página basada en el valor de la celda con código VBA
Imprima cierta hoja de trabajo basada en el valor de la celda con código VBA


Imprima cierta página basada en el valor de la celda con código VBA


Por ejemplo, desea que una determinada página, como la página 1 de la hoja de trabajo actual, se imprima automáticamente al ingresar el número de página 1 en la celda A1 de la hoja de trabajo actual. Puede hacer lo siguiente para lograrlo.

1. Seleccione la celda que contiene el número de página en el que desea imprimir, luego presione otro y F11 teclas simultáneamente para abrir el Microsoft Visual Basic para aplicaciones ventana. Luego haga clic recuadro > Módulo.

2. Entonces el Microsoft Visual Basic para aplicaciones aparece la ventana, copie y pegue el siguiente código VBA en el Código ventana.

Código de VBA: imprima la página según el valor de la celda

Option Explicit
Sub Print_Pages()
Dim xPage As Integer
Dim xYesorNo As Integer
With ActiveCell
    If Not IsEmpty(.Value) And IsNumeric(.Value) Then
        xPage = .Value
    Else: MsgBox "Please specify a cell and enter a page in cell"
        Exit Sub
    End If
End With
xYesorNo = MsgBox("Ready to print page" & xPage & " ", vbYesNo, "Kutools for Excel")
If xYesorNo = vbYes Then
    ActiveSheet.PrintOut from:=xPage, To:=xPage, preview:=True
Else
    Exit Sub
End If
End Sub

3. Prensa F5 clave para ejecutar el código. En el apareciendo Kutools for Excel cuadro de diálogo, haga clic en para imprimir la página determinada, o haga clic en el No para salir del cuadro de diálogo si no desea imprimir. Ver captura de pantalla:

Luego se abre la ventana de vista previa de la página determinada de la hoja de trabajo actual, haga clic en el para comenzar a imprimir.


Imprima cierta página basada en el valor de la celda con código VBA

Supongamos que desea imprimir la hoja de trabajo activa cuando el valor en la celda B2 de esta hoja es igual al número 1001. Puede lograrlo con el siguiente código VBA. Haz lo siguiente.

1. Haga clic derecho en el Ficha Hoja que desea imprimir según el valor de la celda y luego haga clic en Ver código desde el menú contextual.

2. Entonces el Microsoft Visual Basic para aplicaciones aparece la ventana emergente, copie y pegue el siguiente código VBA en la ventana Código.

Código de VBA: imprima la hoja de trabajo según el valor de la celda

Private Sub Worksheet_Change(ByVal Target As Range)
Dim xCell As Range, xYesorNo As Integer
Set xCell = ActiveSheet.Range("B2")
If Application.Intersect(Target, xCell) Is Nothing Then Exit Sub
    If xCell.Value = 1001 Then
        xYesorNo = MsgBox("Ready to print the specified worksheet? ", vbYesNo, "Kutools for Excel")
        If xYesorNo = vbYes Then
          ActiveSheet.PrintOut
        Else
           Exit Sub
        End If
End If
End Sub

<b>Nota</b>: Puede cambiar la celda y el valor de la celda en el código según lo necesite.

3. Prensa otro + Q para cerrar el Microsoft Visual Basic para aplicaciones ventana.

Al ingresar el número 1001 en la celda B2, un Kutools for Excel aparece el cuadro de diálogo, haga clic en el para comenzar a imprimir. O haga clic en el No para salir del cuadro de diálogo directamente sin imprimir. Ver captura de pantalla:

Consejos: Si desea imprimir directamente páginas no consecutivas como la página 1, 6 y 9 en la hoja de trabajo actual, o imprimir solo todas las páginas pares o impares, puede probar el Imprimir páginas especificadas utilidad pf Kutools for Excel como se muestra a continuación. Puedes ir a descarga gratis el software sin limitación en 30 días.


Artículos relacionados:


Las mejores herramientas de productividad de oficina

Kutools para Excel resuelve la mayoría de sus problemas y aumenta su productividad en un 80%

  • Reutilizar: Inserte rápidamente fórmulas complejas, gráficos y cualquier cosa que hayas usado antes; Cifrar celdas con contraseña; Crear lista de distribución y enviar correos electrónicos ...
  • Barra de súper fórmula (edite fácilmente varias líneas de texto y fórmulas); Diseño de lectura (leer y editar fácilmente un gran número de celdas); Pegar en rango filtrado...
  • Combinar celdas / filas / columnas sin perder datos; Contenido de celdas divididas; Combinar filas / columnas duplicadas... Prevenir celdas duplicadas; Comparar rangos...
  • Seleccione Duplicado o Único Filas; Seleccionar filas en blanco (todas las celdas están vacías); Super Find y Fuzzy Find en muchos libros de trabajo; Selección aleatoria ...
  • Copia exacta Varias celdas sin cambiar la referencia de la fórmula; Crear referencias automáticamente a varias hojas; Insertar viñetas, Casillas de verificación y más ...
  • Extraer texto, Agregar texto, Eliminar por posición, Quitar espacio; Crear e imprimir subtotales de paginación; Convertir entre contenido de celdas y comentarios...
  • Súper filtro (guardar y aplicar esquemas de filtros a otras hojas); Orden avanzado por mes / semana / día, frecuencia y más; Filtro especial en negrita, cursiva ...
  • Combinar libros y hojas de trabajo; Combinar tablas basadas en columnas clave; Dividir datos en varias hojas; Conversión por lotes de xls, xlsx y PDF...
  • Más de 300 potentes funciones. Compatible con Office / Excel 2007-2019 y 365. Compatible con todos los idiomas. Fácil implementación en su empresa u organización. Características completas Prueba gratuita de 30 días. Garantía de devolución de dinero de 60 días.
pestaña kte 201905

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

  • Habilite 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 de la misma ventana, en lugar de en nuevas ventanas.
  • ¡Aumenta su productividad en un 50% y reduce cientos de clics del mouse todos los días!
officetab parte inferior
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    Ryan · 1 years ago
    This was very helpful! Is there a way to print multiple pages? For example, if cell A1 = 5, print pages 1-5.
    • To post as a guest, your comment is unpublished.
      crystal · 1 years ago
      Hi Ryan,
      If you want to print consecutive pages such as 1-5 in a worksheet based on a cell value, please specify a cell such as A1 as Text formatting, type 1-5 into it, keep this cell selecting, and then run the below VBA code.

      Sub Print_Pages()
      Dim xPage As String
      Dim xYesorNo As Integer
      Dim xI As String
      Dim xPArr() As String
      Dim xIS, xIE, xF, xNum As Integer
      xPage = ActiveCell.Value
      xYesorNo = MsgBox("Ready to print page" & xPage & " ", vbYesNo, "Kutools for Excel")
      If xYesorNo = vbYes Then
      xPArr() = Split(xPage, "-")
      If UBound(xPArr) = 0 Then
      If IsEmpty(xPage) And IsNumeric(xPage) Then
      MsgBox "Please specify a cell and enter a page in cell"
      Exit Sub
      End If
      xNum = Int(xPage)
      ActiveSheet.PrintOut from:=xNum, To:=xNum, preview:=True
      ElseIf UBound(xPArr) = 1 Then
      On Error GoTo Err01
      xIS = Int(xPArr(0))
      xIE = Int(xPArr(1))
      If xIS < xIE Then
      For xF = xIS To xIE
      ActiveSheet.PrintOut from:=xF, To:=xF, preview:=True
      Next
      Else
      For xF = xIE To xIS
      ActiveSheet.PrintOut from:=xF, To:=xF, preview:=True
      Next
      End If
      Else
      MsgBox "Please enter the valid data", vbOKOnly, "Kutools for Excel"
      Exit Sub
      End If
      Else
      Exit Sub
      End If
      Exit Sub
      Err01:
      MsgBox "Please enter the correct page scope", vbOKOnly, "Kutools for Excel"
      End Sub
      • To post as a guest, your comment is unpublished.
        Manny · 5 months ago
        Thank you. I have the same issue I want to print pages based on cell value. Lets say variable changes i.e page 1-5 and then some time 2-6. So I have a field which will calculate and will put that in text format as suggested.But for some reason it doesnt work for me. It doesnt prints any pages.
        Can you please advise