Note: The other languages of the website are Google-translated. Back to English
English English

Come stampare un foglio specifico in base ai valori delle celle in Excel?

Hai mai provato a stampare alcuni fogli specifici in base al valore di una cella? In questo articolo, parlerò di alcuni esempi su questo problema, se sei interessato a questo problema, continua.

Stampa foglio basato su una cella con VBA

Stampa foglio basato su cella adiacente con VBA


Stampa foglio basato su una cella con VBA

Supponendo che ci siano due fogli, si desidera stampare Foglio1 o Foglio2 o entrambi i fogli in base alla cella A1 nel Foglio1. Si prega di fare come di seguito:

In questo caso, immettere 1 indica di stampare il primo foglio, immettere 2 per stampare il secondo foglio e 3 per stampare entrambi i fogli.

1. Immettere 1, 2 o 3 come necessario per A1 nel primo foglio e premere Alt + F11 chiavi per aprire Microsoft Visual Basic, Applications Edition finestra. Vedi screenshot:
doc stampa foglio per cella 1

2. Clic inserire > Moduloe incolla il codice sottostante nel file Modulo script. Vedi screenshot:

VBA: stampa foglio in base al 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

doc stampa foglio per cella 2

3. Stampa F5 tasto per stampare direttamente i fogli.


Stampa foglio basato su cella adiacente con VBA

Se hai più fogli in una cartella di lavoro e desideri stampare uno o più fogli in base ai valori delle celle da questa cartella di lavoro, puoi fare come di seguito:

1. Crea un nuovo foglio denominato Foglio di controllo nella cartella di lavoro che utilizzi ed elenca tutti i nomi dei fogli nella colonna A (includi o escludi il foglio di controllo di cui hai bisogno). Vedi screenshot:
doc stampa foglio per cella 3

2. Genere "stampare"Nella cella adiacente accanto al nome del foglio se desideri stamparlo. Vedi screenshot mostrato.
doc stampa foglio per cella 4

3. Stampa Alt + F11 tasti per abilitare il Microsoft Visual Basic, Applications Edition finestra e fare clic su inserire > Modulo. Vedi screenshot :
doc stampa foglio per cella 5

4. Incollare sotto il codice nel modulo e premere F5 chiave per eseguire il codice.

VBA: stampa in base alla 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

 doc stampa foglio per cella 6

Dopo aver eseguito il codice, i fogli verranno stampati subito e, allo stesso tempo, un nuovo foglio di controllo sostituirà quello vecchio.

Tipo.Se si dispone di Kutools for Excel'S Crea un elenco di nomi di fogli utility, puoi creare rapidamente un elenco di tutti i nomi dei fogli in un nuovo foglio con un collegamento cliccabile.È piena funzionalità senza limitazioni in

Kutools for Excel, con oltre 300 funzioni utili, rende il tuo lavoro più facile. 
giorni, si prega di scaricare e avere una prova gratuita ora.
doc stampa foglio per cella 7

I migliori strumenti per la produttività in ufficio

Kutools per Excel risolve la maggior parte dei tuoi problemi e aumenta la tua produttività dell'80%

  • Riutilizzo: Inserisci rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Crittografa celle con password; Crea mailing list e invia email ...
  • Bar Super Formula (modifica facilmente più righe di testo e formula); Layout di lettura (leggi e modifica facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Impedisci celle duplicate; Confronta intervalli...
  • Seleziona Duplica o Unico Righe; Seleziona Righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molte cartelle di lavoro; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento della formula; Riferimenti di creazione automatica a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • Estrai testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare totali parziali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtri ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale in grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle in base a colonne chiave; Suddividi i dati in più fogli; Conversione in batch xls, xlsx e PDF...
  • Più di 300 potenti funzionalità. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile distribuzione nella tua azienda o organizzazione. Funzionalità complete Prova gratuita di 30 giorni. Garanzia di rimborso di 60 giorni.
scheda kte 201905

Scheda Office porta l'interfaccia a schede a Office e semplifica notevolmente il lavoro

  • 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, piuttosto che in nuove finestre.
  • Aumenta la produttività del 50% e riduce centinaia di clic del mouse ogni giorno!
fondo officetab
Commenti (0)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite