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

Come stampare determinate pagine o fogli di lavoro in base al valore della cella in Excel?

Hai mai provato a stampare una determinata pagina o foglio di lavoro in base a un valore di cella in Excel? E come ottenerlo? I metodi in questo articolo possono aiutarti a risolverlo nei dettagli.

Stampa una determinata pagina in base al valore della cella con il codice VBA
Stampa determinati fogli di lavoro in base al valore della cella con codice VBA


Stampa una determinata pagina in base al valore della cella con il codice VBA


Ad esempio, si desidera che una determinata pagina come la pagina 1 del foglio di lavoro corrente venga stampata automaticamente quando si immette il numero di pagina 1 nella cella A1 del foglio di lavoro corrente. Puoi fare come segue per ottenerlo.

1. Selezionare la cella che contiene il numero di pagina su cui si desidera stampare, quindi premere altro e F11 tasti contemporaneamente per aprire il file Microsoft Visual Basic, Applications Edition finestra. Quindi fare clic inserire > Modulo.

2. Quindi il file Microsoft Visual Basic, Applications Edition si apre la finestra, copia e incolla il seguente codice VBA nel file Codice finestra.

Codice VBA: stampa la pagina in base al valore della cella

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. Stampa F5 chiave per eseguire il codice. Nel spuntare Kutools for Excel finestra di dialogo, fare clic su per stampare una determinata pagina o fare clic sul pulsante Non per uscire dalla finestra di dialogo se non si desidera stampare. Vedi screenshot:

Quindi si apre la finestra di anteprima di una determinata pagina del foglio di lavoro corrente, fare clic su Stampa pulsante per avviare la stampa.


Stampa una determinata pagina in base al valore della cella con il codice VBA

Supponendo di voler stampare il foglio di lavoro attivo quando il valore nella cella B2 di questo foglio è uguale al numero 1001. Puoi ottenerlo con il seguente codice VBA. Si prega di fare quanto segue.

1. Fare clic con il pulsante destro del mouse su Scheda Foglio che si desidera stampare in base al valore della cella, quindi fare clic su Visualizza codice dal menu di scelta rapida.

2. Quindi il file Microsoft Visual Basic, Applications Edition si apre la finestra, copia e incolla il seguente codice VBA nella finestra del codice.

Codice VBA: stampa il foglio di lavoro in base al valore della cella

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

Note:: Puoi modificare la cella e il valore della cella nel codice di cui hai bisogno.

3. Stampa altro + Q chiudere il Microsoft Visual Basic, Applications Edition finestra.

Quando si immette il numero 1001 nella cella B2, a Kutools for Excel si apre la finestra di dialogo, fare clic su pulsante per avviare la stampa. Oppure fai clic su Non per uscire direttamente dalla finestra di dialogo senza stampare. Vedi screenshot:

Mancia: Se desideri stampare direttamente pagine non consecutive come le pagine 1, 6 e 9 nel foglio di lavoro corrente, o stampare solo tutte le pagine pari o dispari, puoi provare il Stampa pagine specificate utilità pf Kutools for Excel come mostrato nell'immagine sottostante. Puoi andare a scarica gratuitamente il software senza limitazioni in 30 giorni.


Articoli correlati:


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 (4)
Ancora nessuna valutazione. Puoi essere il primo a votare!
Questo commento è stato fatto dal moderatore sul sito
Questo è stato molto utile! C'è un modo per stampare più pagine? Ad esempio, se la cella A1 = 5, stampare le pagine 1-5.
Questo commento è stato fatto dal moderatore sul sito
Ciao Ryan,
Se desideri stampare pagine consecutive come 1-5 in un foglio di lavoro in base al valore di una cella, specifica una cella come A1 come formattazione del testo, digita 1-5 al suo interno, mantieni questa cella selezionata, quindi esegui il VBA sottostante codice.

Sub Stampa_Pagine()
Dim xPage come stringa
Dim xYesorNo come intero
Dim xI come stringa
Dim xPArr() come stringa
Dim xIS, xIE, xF, xNum come intero
xPagina = ActiveCell.Value
xYesorNo = MsgBox("Pagina pronta per la stampa" & xPage & " ", vbYesNo, "Ktools for Excel")
Se xSìorNo = vbSì Allora
xPArr() = Dividi(xPagina, "-")
Se UBound(xPArr) = 0 Allora
Se IsEmpty(xPage) e IsNumeric(xPage) allora
MsgBox "Specifica una cella e inserisci una pagina nella cella"
Exit Sub
End If
xNum = Int(xPagina)
ActiveSheet.PrintOut da:=xNum, A:=xNum, anteprima:=True
ElseIf UBound(xPArr) = 1 Allora
In caso di errore Vai a Err01
xIS = Int(xPArr(0))
xIE = Int(xPArr(1))
Se xIS < xIE Allora
Per xF = xIS per xIE
ActiveSheet.PrintOut da:=xF, A:=xF, anteprima:=True
Successiva
Altro
Per xF = xIE A xIS
ActiveSheet.PrintOut da:=xF, A:=xF, anteprima:=True
Successiva
End If
Altro
MsgBox "Inserisci i dati validi", vbOKOnly, "Ktools for Excel"
Exit Sub
End If
Altro
Exit Sub
End If
Exit Sub
Err01:
MsgBox "Inserisci l'ambito della pagina corretto", vbOKOnly, "Ktools for Excel"
End Sub
Questo commento è stato fatto dal moderatore sul sito
Grazie. Ho lo stesso problema che voglio stampare le pagine in base al valore della cella. Diciamo modifiche variabili cioè pagina 1-5 e poi qualche volta 2-6. Quindi ho un campo che calcolerà e lo metterà in formato testo come suggerito. Ma per qualche motivo non funziona per me. Non stampa alcuna pagina. Potete per favore avvisare
Questo commento è stato fatto dal moderatore sul sito
Hai mai capito come farlo funzionare?
Non ci sono ancora commenti pubblicati qui
Lasciate i vostri commenti
Pubblicazione come ospite
×
Valuta questo post:
0   Personaggi
Posizioni suggerite