VBA-utskrift

Utskrift i VBA är mycket lik utskriften i Excel, när vi har viktiga data i Excel eller kalkylark är det enda sättet att ha dem säkra att spara dem i pdf eller skriva ut dem, för utskrift måste vi ställa in utskriftskommandot i VBA först innan du använder det, vad detta kommando gör om du skriver ut eller skriver data i en annan fil.

Vad är utskrift i VBA Excel?

VBA-utskrift är inget som vanligt, hur vi skriver ut i det vanliga kalkylbladet, det finns ingen skillnad i detta. Med hjälp av Excel VBA-kod kan vi skriva ut hela kalkylbladsdata, vi kan skriva ut arbetsboken, diagram, specificerat intervall etc.

Efter allt hårt arbete vi har gjort för att presentera rapporten för chefen skickar vi vanligtvis e-post. Men i vissa fall under mötet behöver din chef en papperskopia av dina rapporter, i dessa scenarier måste du skriva ut den rapport du har i kalkylbladet. En av anledningarna till att din chef behöver skriva ut rapporten kan vara att det är en mycket stor rapport att läsa på datorn. I ett kalkylblad måste du redan ha känt till att skriva ut rapporterna. I den här artikeln visar vi dig hur du skriver ut med VBA-kodning. Följ den här artikeln de närmaste 15 minuterna för att lära dig hur man skriver ut rapporter i VBA.

Syntax för VBA PrintOut i VBA Excel

Innan vi ser syntaxen, låt mig först klargöra detta. Vad skriver vi ut, vi skriver ut områden, diagram, kalkylblad, arbetsböcker. Så metoden PrintOut () är tillgänglig med alla dessa mål.

[Från]: Från vilken sida av utskriften som måste starta. Om vi ​​inte ger något värde kommer det att behandlas från första sidan.

[Till]: Vad ska vara den sista sidan att skriva ut? Om den ignoreras kommer den att skrivas ut till sista sidan.

[Kopior]: Hur många kopior du behöver skriva ut.

[Förhandsgranska]: Vill du se utskriftsförhandsgranskningen innan du fortsätter att skriva ut. Om ja SANT är argumentet, om inte FALSE är argumentet.

Exempel på utskrift i VBA Excel

Nedan följer exemplen på Skriv ut i VBA Excel.

Du kan ladda ner den här VBA Print Excel-mallen här - VBA Print Excel-mall

För illustrationsändamål har jag skapat dummydata som visas på bilden nedan.

Nu måste vi skriva ut rapporten från A1 till D14, det här är mitt sortiment. Ange intervallet i VBA-koden för att komma till PrintOut-metoden.

Koda:

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

Gå nu till PrintOut-metoden.

Koda:

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

Jag berör inte någon av parametrarna, det räcker för att skriva ut det valda intervallet. Om jag kör den här koden kommer den att skriva ut intervallet från A1 till D14-cellen.

Parametrar för utskriftsmetod i VBA Excel

Nu har jag kopierat och klistrat in samma data för att använda andra parametrar för PrintOut-metoden i VBA Excel.

När vi vill skriva ut hela arket kan vi hänvisa hela arket till Aktivt ark, detta täcker hela arket i det.

  • Kod för att skriva ut hela arbetsbladet.

Koda:

Sub Print_Example1 () ActiveSheet.UsedRange.PrintOut 'Detta kommer att skriva ut hela området som används. Avsluta sub

  • Kod för att hänvisa till arkenamnet .

Koda:

 Sub Print_Example1 () Sheets ("Ex 1"). UsedRange.PrintOut 'Detta kommer också att skriva ut hela det använda området för arket som heter Ex 1. End Sub 

  • Kod för att skriva ut alla kalkylblad i arbetsboken .

Koda:

Sub Print_Example1 () Worksheets.UsedRange.PrintOut 'Detta kommer också att skriva ut hela det använda området för hela arket i arbetsboken. Avsluta sub

  • Kod för att skriva ut hela arbetsboksdata .

Koda:

Sub Print_Example1 () ThisWorkbook.UsedRange.PrintOut 'Detta kommer också att skriva ut hela det använda området för hela arket i arbetsboken. Avsluta sub

  • Kod för att bara skriva ut det valda området .

Koda:

 Sub Print_Example1 () Selection.PrintOut 'Detta skriver endast ut det valda intervallet End Sub 

Hur använder jag parametrarna för utskriftsmetoden i Excel VBA?

Nu kommer vi att se hur man använder parametrarna för utskriftsmetoden. Som jag sa har jag utvidgat data till att använda andra egenskaper.

Visst kommer detta inte att skrivas ut i ett ark. Välj intervallet som A1 till S29.

Koda:

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

Välj nu utskriftsmetoden.

Koda:

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

Första och andra parametrarna är Från och till, vad är start- och slutsidans position. Som standard kommer alla sidor att skrivas ut, så jag rör inte den här delen. Nu vill jag se förhandsgranskningen så att jag väljer Förhandsgranska som SANT.

Koda:

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

Nu ska jag köra den här koden, vi ser utskriftsförhandsgranskningen.

Detta kommer på två sidor.

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.