Come stampare fogli specifici in base ai valori delle celle in Excel?
Hai mai provato a stampare fogli specifici in base al valore di una cella? In questo articolo, fornirò alcuni esempi per affrontare questa problematica. Se sei interessato, continua a leggere.
Stampa foglio basato su una cella con VBA
Stampa foglio basato su una cella adiacente con VBA
Stampa foglio basato su una cella con VBA
Supponendo che ci siano due fogli, vuoi stampare Foglio1 o Foglio2 o entrambi i fogli in base alla cella A1 nel Foglio1. Procedi come segue:
In questo caso, inserire 1 indica di stampare il primo foglio, inserire 2 per stampare il secondo foglio e 3 per stampare entrambi i fogli.
1. Inserisci 1, 2 o 3 come necessario nella cella A1 del primo foglio e premi i tasti Alt + F11 per aprire la finestra Microsoft Visual Basic for Applications.
2. Clicca Inserisci > Modulo, e incolla il codice seguente nel Modulo script. Vedi screenshot:
VBA: Stampa Foglio basato sul valore della cella
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. Premi il tasto F5 per stampare direttamente il/i foglio/i.
Stampa foglio basato su una cella adiacente con VBA
Se hai più fogli in una cartella di lavoro e vuoi stampare uno o più fogli in base ai valori delle celle di questa cartella di lavoro, puoi procedere come segue:
1. Crea un nuovo foglio denominato Foglio di Controllo nella cartella di lavoro che stai utilizzando, e elenca tutti i nomi dei fogli nella colonna A (includendo o escludendo il foglio di controllo come necessario). Vedi screenshot:
2. Digita “stampa” nella cella adiacente accanto al nome del foglio se desideri stamparlo. Vedi lo screenshot mostrato.
3. Premi Alt + F11 per abilitare la finestra Microsoft Visual Basic for Applications e clicca Inserisci > Modulo. Vedi screenshot:
4. Incolla il codice seguente nel Modulo e premi il tasto F5 per eseguire il codice.
VBA: Stampa basata su cella adiacente
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
Dopo aver eseguito il codice, il/i foglio/i verrà/verranno stampato/i immediatamente e, allo stesso tempo, un nuovo Foglio di Controllo sostituirà quello vecchio.

Kutools per Excel - Potenzia Excel con oltre 300 strumenti essenziali. Goditi funzionalità AI gratuite per sempre! Ottienilo ora
I migliori strumenti per la produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l'interfaccia a schede in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e riduce centinaia di clic del mouse ogni giorno!