Istruzione VBA Print - Come utilizzare Excel VBA per la stampa? (con esempi)

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 è niente, ma come al solito, come stampiamo nel normale foglio di lavoro non c'è differenza in questo. Utilizzando 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 email. Ma in alcuni casi durante la riunione, il tuo manager ha bisogno di una copia cartacea dei tuoi rapporti. In questi 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 un rapporto molto grande da leggere sul computer. In un foglio di lavoro, è necessario avere già familiarità con la stampa dei report. 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 della stampa deve iniziare. Se non forniamo alcun valore, verrà trattato 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.

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

Ora dobbiamo stampare il report da A1 a D14. Questa è la mia gamma. 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
  • Code to Print all the Worksheets in the Workbook.

Code:

Sub Print_Example1() Worksheets.UsedRange.PrintOut 'This will also print the entire used range of all the sheet in the workbook. End Sub
  • Code to Print the Entire Workbook Data.

Code:

Sub Print_Example1() ThisWorkbook.UsedRange.PrintOut 'This will also print the entire used range of all the sheet in the workbook. End Sub
  • Code to Print Only the Selected Area.

Code:

Sub Print_Example1() Selection.PrintOut 'This will print only the selected range End Sub

How to use the Parameters of Print Out Method in Excel VBA?

Now we will see how to use the parameters of the print out method. As I told, I had expanded the data to use other properties.

For sure, this is not going to print in a single sheet. Select the range as A1 to S29.

Code:

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

Now select the print out method.

Code:

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

The first & second parameters are From & To, what is the starting & ending pages position. By default, it will print all the pages, so I don’t touch this part. Now I want to see the print preview, so I will choose Preview as TRUE.

Code:

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

Now I will run this code. We will see the print preview.

This is coming in 2 pages.

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

Questo imposterà la pagina per la stampa in un foglio e per la stampa in modalità orizzontale. Ora l'anteprima di stampa sarà così.

In questo modo, possiamo usare VBA print out un metodo per stampare le cose che volevamo stampare e giocare con loro.

Articoli interessanti...