Stampa VBA

La stampa in VBA è molto simile alla stampa in Excel, quando abbiamo dati importanti in Excel o fogli di calcolo, l'unico modo per averli al sicuro è salvarli in pdf o stamparli, per la stampa dobbiamo impostare il comando di stampa in VBA prima di usarlo, cosa fa questo comando se stampa o scrive i dati in un altro file.

Che cos'è la stampa in VBA Excel?

La stampa VBA non è altro che come al solito, come stampiamo nel normale foglio di lavoro, non c'è differenza in questo. Usando il codice VBA di Excel possiamo stampare i dati dell'intero foglio di lavoro, possiamo stampare la cartella di lavoro, i grafici, l'intervallo specificato, ecc.

Dopo tutto il duro lavoro che abbiamo svolto per presentare il rapporto al manager, di solito inviamo delle email. Ma in alcuni casi durante la riunione, il tuo manager ha bisogno di una copia cartacea dei tuoi rapporti, in quegli scenari devi stampare il rapporto che hai nel foglio di calcolo. Uno dei motivi per cui il tuo manager ha bisogno di una stampa del rapporto potrebbe essere che si tratta di un rapporto molto grande da leggere sul computer. In un foglio di lavoro, è necessario avere già familiarità con la stampa dei rapporti. In questo articolo, ti mostreremo come stampare utilizzando la codifica VBA. Segui questo articolo per i prossimi 15 minuti per scoprire come stampare report in VBA.

Sintassi di VBA PrintOut in VBA Excel

Prima di vedere la sintassi, lasciatemi chiarire prima questo. Cosa stampiamo, stampiamo intervalli, grafici, fogli di lavoro, cartelle di lavoro. Quindi il metodo PrintOut () è disponibile con tutti questi obiettivi.

[Da]: da quale pagina deve iniziare la stampa. Se non forniamo alcun valore, tratterà come dalla prima pagina.

[A]: quale dovrebbe essere l'ultima pagina da stampare? Se ignorato verrà stampato fino all'ultima pagina.

[Copie]: quante copie è necessario stampare.

[Anteprima]: desideri vedere l'anteprima di stampa prima di procedere alla stampa. Se sì VERO è l'argomento, se non FALSO è l'argomento.

Esempi di stampa in VBA Excel

Di seguito sono riportati gli esempi di stampa in VBA Excel.

Puoi scaricare questo modello Excel di stampa VBA qui - Modello Excel di stampa VBA

A scopo illustrativo, ho creato dati fittizi come mostrato nell'immagine sottostante.

Ora dobbiamo stampare il rapporto da A1 a D14, questo è il mio intervallo. Immettere l'intervallo nel codice VBA per accedere al metodo PrintOut.

Codice:

 Sub Print_Example1 () Range ("A1: D14") End Sub 

Ora accedi al metodo PrintOut.

Codice:

 Sub Print_Example1 () Range ("A1: D14"). PrintOut End Sub 

Non sto toccando nessuno dei parametri, questo è sufficiente per stampare l'intervallo selezionato. Se eseguo questo codice stamperà l'intervallo dalla cella A1 alla cella D14.

Parametri del metodo di stampa in VBA Excel

Ora ho copiato e incollato gli stessi dati per utilizzare altri parametri del metodo PrintOut in VBA Excel.

Quando vogliamo stampare l'intero foglio, possiamo fare riferimento all'intero foglio come Foglio attivo, questo coprirà l'intero foglio al suo interno.

  • Codice per stampare l'intero foglio di lavoro.

Codice:

Sub Print_Example1 () ActiveSheet.UsedRange.PrintOut 'Questo stamperà l'intero intervallo di fogli utilizzato. End Sub

  • Codice per fare riferimento al nome del foglio .

Codice:

 Sub Print_Example1 () Sheets ("Ex 1"). UsedRange.PrintOut 'Questo stamperà anche l'intero intervallo utilizzato del foglio denominato Ex 1. End Sub 

  • Codice per stampare tutti i fogli di lavoro nella cartella di lavoro .

Codice:

Sub Print_Example1 () Worksheets.UsedRange.PrintOut 'Questo stamperà anche l'intero intervallo utilizzato di tutto il foglio nella cartella di lavoro. End Sub

  • Codice per stampare i dati dell'intera cartella di lavoro .

Codice:

Sub Print_Example1 () ThisWorkbook.UsedRange.PrintOut 'Questo stamperà anche l'intero intervallo utilizzato di tutto il foglio nella cartella di lavoro. End Sub

  • Codice per stampare solo l'area selezionata .

Codice:

 Sub Print_Example1 () Selection.PrintOut 'Questo stamperà solo l'intervallo selezionato End Sub 

Come utilizzare i parametri del metodo di stampa in Excel VBA?

Adesso vedremo come utilizzare i parametri del metodo print out. Come ho detto ho ampliato i dati per utilizzare altre proprietà.

Di sicuro questo non verrà stampato in un unico foglio. Seleziona l'intervallo da A1 a S29.

Codice:

 Sub Print_Example2 () Range ("A1: S29") End Sub 

Ora seleziona il metodo di stampa.

Codice:

 Sub Print_Example2 () Range ("A1: S29"). PrintOut End Sub 

Il primo e il secondo parametro sono Da e A, qual è la posizione delle pagine iniziale e finale. Per impostazione predefinita stamperà tutte le pagine, quindi non tocco questa parte. Ora voglio vedere l'anteprima di stampa, quindi sceglierò Anteprima come VERO.

Codice:

 Sub Print_Example2 () Range ("A1: S29"). PrintOut Preview: = True End Sub 

Ora eseguirò questo codice, vedremo l'anteprima di stampa.

Questo arriverà in 2 pagine.

So first I want to set up the page to come in a single sheet. Use the below code to set up the page to come in one sheet.

Code:

 Sub Print_Example2() With Worksheets("Example 1").PageSetup .Zoom = False .FitToPagesTall = 2 .FitToPagesWide = 1 .Orientation = xlLandscape End With ActiveSheet.PrintOut Preview:= True End Sub 

This will set up the page to print in one sheet as well to print in landscape mode. Now the print preview will be like this.

Like this, we can use VBA print out a method to print the things we wanted to print and play around with them.