¿Cómo imprimir una hoja específica basada en valores de celda en Excel?
¿Alguna vez ha intentado imprimir algunas hojas específicas en función de un valor de celda? En este artículo, hablaré sobre algunos ejemplos sobre este tema, si está interesado en este problema, continúe.
Imprimir hoja basada en una celda con VBA
Imprimir hoja basada en celda adyacente con VBA
Imprimir hoja basada en una celda con VBA
Suponiendo que hay dos hojas, desea imprimir Sheet1 u Sheet2 o ambas hojas según la celda A1 en Sheet1. Por favor haga lo siguiente:
En este caso, ingresar 1 indica imprimir la primera hoja, ingresar 2 para imprimir la segunda hoja y 3 para imprimir ambas hojas.
1. Introduzca 1, 2 o 3 como necesite en A1 en la primera hoja y presione Alt + F11 llaves para abrir Microsoft Visual Basic para aplicaciones ventana. Ver captura de pantalla:
2. Hacer clic en recuadro > Móduloy pegue el código siguiente en el Módulo guión. Ver captura de pantalla:
VBA: hoja de impresión basada en el valor de la 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
3. Prensa F5 para imprimir directamente la (s) hoja (s).
Imprimir hoja basada en celda adyacente con VBA
Si tiene varias hojas en un libro de trabajo y desea imprimir una o varias hojas según los valores de celda de este libro de trabajo, puede hacer lo siguiente:
1. Cree una nueva hoja llamada Hoja de control en el libro de trabajo que usa y enumere todos los nombres de la hoja en la columna A (incluya o excluya la hoja de control según lo necesite). Ver captura de pantalla:
2. Tipo "Imprimir”En la celda adyacente junto al nombre de la hoja si desea imprimirla. Vea la captura de pantalla que se muestra.
3. Prensa Alt + F11 claves para habilitar el Microsoft Visual Basic para aplicaciones ventana y haga clic en recuadro > Módulo. Ver captura de pantalla:
4. Pegue el código siguiente en el módulo y presione F5 clave para ejecutar el código.
VBA: imprimir basado en 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
Después de ejecutar el código, las hojas se imprimirán ahora mismo y, al mismo tiempo, una nueva Hoja de control reemplazará a la anterior.
Kutools for Excel, con más de 300 funciones prácticas, facilita su trabajo. |
Las mejores herramientas de productividad de oficina
Mejore sus habilidades de Excel con Kutools for Excel y experimente la eficiencia como nunca antes. Kutools for Excel ofrece más de 300 funciones avanzadas para aumentar la productividad y ahorrar tiempo. Haga clic aquí para obtener la función que más necesita...
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!