I denne artikkelen vil vi lage en makro for å skrive ut data fra forskjellige ark.
Vi har forskjellige rådata i to ark, og vi ønsker å tilpasse utskrift fra disse arkene.
Før vi kjører makroen, må vi spesifisere hvilken type utskrift som kreves og angi navn, område eller egendefinert visning.
Vi har laget en tilpasset visning "customView1".
Logisk forklaring
Vi har laget “PrintReports” -makro for tilpasset utskrift. Denne makroen sløyfes fra celle A13 til siste rad. Vi kan spesifisere tre forskjellige typer for tilpasset utskrift.
For type 1 må vi spesifisere arknavnet i den neste kolonnen.
For type 2 må vi spesifisere området som vi vil skrive ut.
For type 3 må vi spesifisere navnet på den tilpassede visningen.
Kode forklaring
For hver celle1 i rekkevidde ("A13", ActiveCell.End (xlDown))
Koden ovenfor brukes til å gå fra celle A13 til den siste raden.
DefinedName = ActiveCell.Offset (0, 1) .Value
Koden ovenfor brukes til å hente verdien fra cellen i den neste kolonnen fra den aktive cellen.
Velg Case Cell 1. verdi
Sak 1
'Velge det definerte arket
Ark (DefinedName) .Velg
Sak 2
'Velge det definerte området
Gå til Application.Goto Reference: = DefinedName
Sak 3
'Velge den definerte tilpassede visningen
ActiveWorkbook.CustomViews (DefinedName) .Vis
Avslutt Velg
Select -setningen ovenfor brukes til å velge det angitte området basert på typen definert av brukeren.
ActiveWindow.SelectedSheets.PrintOut
Koden ovenfor brukes til å skrive ut det valgte området.
Følg koden nedenfor
Option Explicit Sub PrintReports () 'Deklarerte variabler Dim DefinedName As String Dim Cell1 As Range' Deaktivering av skjermoppdateringer Application.ScreenUpdating = False 'Sløyfe gjennom alle cellene for hver celle1 i område ("A13", ActiveCell.End (xlDown)) Ark ("Hoved"). Aktiver "Velge celle Cell1. Velg" Få verdi for arknavn eller definert område DefinedName = ActiveCell.Offset (0, 1) .Value Select Case Cell1.Value Case 1 'Velge de definerte arkarkene (DefinedName Velg Case 2 'Velge det definerte området Application.Goto Reference: = DefinedName Case 3' Velge den definerte egendefinerte visningen ActiveWorkbook.CustomViews (DefinedName) .Show End Select 'Skrive ut de nødvendige dataene ActiveWindow.SelectedSheets.PrintOut Next Application.ScreenUpdating = True End Sub
Hvis du likte denne bloggen, del den med vennene dine på Facebook. Du kan også følge oss på Twitter og Facebook.
Vi vil gjerne høre fra deg, gi oss beskjed om hvordan vi kan forbedre arbeidet vårt og gjøre det bedre for deg. Skriv til oss på e -post