Du vil måske nogle gange have behov for at oprette en Excel-projektmappe på en automatiseret måde. For eksempel skal du muligvis kopiere data fra en tabel og indsætte dem i en nyoprettet projektmappe. Den følgende makro kopierer en række celler fra det aktive ark og indsætter dataene i en ny projektmappe.
Sådan fungerer makroen
Som du vil se, når du læser gennem linjerne i koden, er denne makro relativt intuitiv:
Undermakro1()
'Trin 1 Kopier dataene
Sheets("Eksempel 1").Range("B4:C15").Kopi
Trin 2 Opret en ny projektmappe
Arbejdsbøger.Tilføj
'Trin 3 Indsæt dataene
ActiveSheet.Paste Destination:=Range("A1")
'Trin 4 Deaktiver applikationsadvarsler
Application.DisplayAlerts = Falsk
Trin 5 Gem den nyoprettede projektmappe
ActiveWorkbook.SaveAs _
Filnavn:="C:TempMyNewBook.xlsx"
'Trin 6 Slå app-advarsler til igen
Application.DisplayAlerts = Sand
Slut Sub
I trin 1 kopierer du blot de data, der spænder fra celler B4 til C15. Bemærk, at du angiver både arket og området ved navn. Denne tilgang er en god praksis, når du arbejder med flere åbne projektmapper.
I trin 2 bruger du metoden Tilføj for projektmappeobjektet til at oprette en projektmappe. Den tomme projektmappe svarer til manuelt at vælge Fil → Ny → Tomt dokument i Excel-båndet.
I trin 3 bruger du Indsæt-metoden til at sende de kopierede data til celle A1 i den nye projektmappe.
Vær opmærksom på, at koden refererer til ActiveSheet-objektet. Når du tilføjer en projektmappe, får den nye projektmappe straks fokus og bliver den aktive projektmappe. (Excel gør det samme, når du tilføjer en projektmappe manuelt.)
I trin 4 af koden indstiller du DisplayAlerts-metoden til False, hvilket effektivt slår Excels advarsler fra. Det gør du, fordi du i næste trin i koden gemmer den nyoprettede projektmappe. Du kan køre denne makro flere gange, i hvilket tilfælde Excel forsøger at gemme filen flere gange.
Hvad sker der, når du forsøger at gemme en projektmappe flere gange? Det er rigtigt - Excel advarer dig om, at der allerede er en fil med det navn, og spørger derefter, om du vil overskrive den tidligere eksisterende fil. Fordi dit mål er at automatisere oprettelsen af projektmappen, vil du gerne undertrykke denne advarsel.
I trin 5 gemmer du filen ved at bruge SaveAs-metoden. Bemærk, at du indtaster den fulde sti til lagringsstedet, inklusive det endelige filnavn.
Fordi du deaktiverede applikationsændringer i trin 4, skal du tænde dem igen (se trin 6). Hvis du ikke gør det, fortsætter Excel med at undertrykke alle advarsler under den aktuelle session.
Sådan bruger du makroen
For at implementere denne makro kan du kopiere og indsætte den i et standardmodul:
Aktiver Visual Basic Editor ved at trykke på Alt+F11.
Højreklik på projektets/projektmappens navn i projektvinduet.
Vælg Indsæt → Modul.
Indtast eller indsæt koden i det nyoprettede modul.
Du bliver sandsynligvis nødt til at ændre arknavnet, områdeadressen og lagringsstedet.