Hvis du trenger å skrive ut fra flere Excel-arbeidsbøker i en katalog, kan du bruke makroen presenteres her for å skrive dem alle på en gang.
Hvordan makro verk
i denne makroen, bruker du Dir funksjonen til å returnere en streng som representerer navnet på filen som samsvarer med hva du sender til den.
du bruker Dir-funksjonen til å nummerere gjennom alle. xlsx filer i en gitt katalog, fange hver fil navn. Så du åpne hver fil, skrive den ut, og deretter lukke det
Sub Makro1 () 'Trinn 1:. Erklærer variabler Dim MyFiles Som String'Step 2: angi et mål katalog MyFiles = Dir ( "C: \\ Temp \\ * .xlsx ") gjøre mens MyFiles < > "" 'Trinn 3: Åpne arbeidsbøker én etter én Workbooks.Open "C: \\ Temp \\" & MyFiles ActiveWorkbook.Sheets ( "Ark1") Utskrift Eksemplar:. = 1 ActiveWorkbook.Close Savechanges: = False'Step 4: Neste fil i katalogen MyFiles = Dir LoopEnd Sub
Trinn 1 erklærer MyFiles String variabel som vil fange hver filnavn i opptellingen.
Trinn 2 bruker Dir-funksjonen til å angi katalogen og filtype du leter etter. Merk at koden er på utkikk etter * .xlsx, så bare xlsx filer vil bli slurer. Hvis du ønsker å se etter XLS-filer, må du angi at (sammen med katalogen du trenger for å søke). Makro passerer noen filnavn den finner til MyFiles String variabel.
Trinn 3 åpner filen og skriver deretter en kopi av Ark1. Unødvendig å si, vil du sannsynligvis ønske å endre hvilke ark som skal skrives ut. Du kan også endre antall eksemplarer som skal skrives ut.
Trinn 4 løkkene tilbake for å finne flere filer. Hvis det ikke er flere filer, er det MyFiles variabel blank og sløyfen og makro slutten.
Hvordan bruke makro
For å gjennomføre denne makroen, kan du kopiere og lime den inn i en standard modul:..
Aktiver Visual Basic Editor ved å trykke Alt + F11
Høyreklikk på prosjektet /arbeidsbok navnet i prosjektvinduet
Velg Sett → Module
Skriv eller lim inn koden i den nyopprettede modulen, endre utskrifts uttalelse etter behov
..