Suggerimento: le altre lingue sono tradotte da Google. Puoi visitare il English versione di questo link.
Connetti
x
or
x
x
Registrati
x

or

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

Hai mai provato a stampare determinate pagine o fogli di lavoro in base al valore di una cella in Excel? E come raggiungerlo? 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 basati sul valore della cella con codice VBA

Scheda Office Abilita la modifica e la navigazione a schede in Office e semplifica notevolmente il tuo lavoro ...
Kutools per Excel risolve la maggior parte dei problemi e aumenta la produttività del 80%
  • Riutilizzare qualsiasi cosa: Aggiungi le formule più utilizzate o complesse, i grafici e qualsiasi altra cosa ai tuoi preferiti e riutilizzali rapidamente in futuro.
  • Più delle funzioni di testo di 20: Estrai numero da stringa di testo; Estrai o rimuovi parte di testi; Converti numeri e valute in parole inglesi ...
  • Unisci strumenti: Più cartelle di lavoro e fogli in uno; Unisci più celle / righe / colonne senza perdere dati; Unisci righe duplicate e somma ...
  • Strumenti di divisione: Suddivisione dei dati in più fogli in base al valore; Una cartella di lavoro per più file Excel, PDF o CSV; Una colonna a più colonne ...
  • Incolla Saltare Righe nascoste / filtrate; Conte E Somma per colore di sfondo; Crea una mailing list e Invia e-mail in base al valore della cella...
  • Super filtro: Crea schemi di filtro avanzati e applica a tutti i fogli; Ordinare per settimana, giorno, frequenza e altro; Filtro da grassetto, formule, commento ...
  • Oltre alle potenti funzionalità di 300; Funziona con Office 2007-2019 e 365; Supporta tutte le lingue; Facile implementazione nella tua azienda o organizzazione.

freccia blu bolla destra Stampa una determinata pagina in base al valore della cella con il codice VBA


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

1. Selezionare la cella contenente il numero di pagina che si desidera stampare, quindi premere contemporaneamente i tasti Alt e F11 per aprire la finestra di Microsoft Visual Basic. Quindi fare clic inserire > Modulo.

2. Poi il Microsoft Visual Basic, Applications Edition finestra si apre, si prega di copiare e incollare il seguente codice VBA nel 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 saltar fuori Kutools for Excel finestra di dialogo, fare clic su pulsante per stampare la pagina specifica o fare clic su non pulsante per uscire dalla finestra di dialogo se non si desidera stampare. Vedi screenshot:

Quindi si apre la finestra di anteprima della pagina specifica del foglio di lavoro corrente, fare clic su Stampar pulsante per iniziare a stampare.


freccia blu bolla destra 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 come segue.

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

2. Poi il Microsoft Visual Basic, Applications Edition finestra si apre, si prega di copiare e incollare 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 il valore di cella e cella nel codice in base alle tue esigenze.

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 viene visualizzata la finestra di dialogo, fare clic su pulsante per iniziare a stampare. Oppure fai clic su non pulsante per uscire direttamente dalla finestra di dialogo senza stampare. Vedi screenshot:

Mancia: Se si desidera stampare direttamente pagine non consecutive come 1, 6 e 9 nel foglio di lavoro corrente o stampare solo tutte le pagine pari o dispari, è possibile provare il Stampa pagine specificate utilità pf Kutools for Excel come mostrato nella figura sottostante. Puoi andare a scarica gratuitamente il software senza limiti nei giorni 60.


freccia blu bolla destraArticoli correlati:


Kutools per Excel risolve la maggior parte dei problemi e aumenta la produttività del 80%

  • Riutilizzo: Inserire rapidamente formule complesse, grafici e tutto ciò che hai usato prima; Cifra le celle con password; Crea mailing list e invia email ...
  • Super Formula Bar (modifica facilmente più righe di testo e formula); Layout di lettura (leggere e modificare facilmente un gran numero di celle); Incolla su intervallo filtrato...
  • Unisci celle / righe / colonne senza perdere i dati; Contenuto delle celle divise; Combina righe / colonne duplicate... Previeni celle duplicate; Confronta le gamme...
  • Seleziona Duplica o Unica Righe; Seleziona righe vuote (tutte le celle sono vuote); Super Find e Fuzzy Find in molti libri di esercizi; Selezione casuale ...
  • Copia esatta Più celle senza modificare il riferimento alla formula; Creazione automatica di riferimenti a più fogli; Inserisci punti elenco, Caselle di controllo e altro ...
  • estrarre il testo, Aggiungi testo, Rimuovi per posizione, Rimuovi spazio; Creare e stampare subtotali di paging; Converti contenuto e commenti tra celle...
  • Super filtro (salva e applica schemi di filtro ad altri fogli); Ordinamento avanzato per mese / settimana / giorno, frequenza e altro; Filtro speciale di grassetto, corsivo ...
  • Combina cartelle di lavoro e fogli di lavoro; Unisci tabelle basate su colonne chiave; Dividi i dati in più fogli; Converti in batch xls, xlsx e PDF...
  • Oltre alle potenti funzionalità di 300. Supporta Office / Excel 2007-2019 e 365. Supporta tutte le lingue. Facile implementazione nella tua azienda o organizzazione. Funzioni complete di prova gratuita di 30-day.
kte tab 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, Editore, accesso, Visio e progetto.
  • Apri e crea più documenti in nuove schede della stessa finestra, piuttosto che in nuove finestre.
  • Aumenta la tua produttività di 50% e riduce centinaia di clic del mouse per te ogni giorno!
fondo officetab
Say something here...
symbols left.
You are guest ( Sign Up? )
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 · 4 months 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 · 3 months 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