VBA Tilføj nyt ark - Navn, før/efter og flere eksempler

Denne vejledning vil diskutere, hvordan du tilføjer / indsætter regneark ved hjælp af VBA.

Tilføj ark

Denne enkle makro tilføjer et ark før ActiveSheet:

123 Sub Tilføj ()Ark. TilføjAfslut Sub

Efter indsættelse af et ark bliver det nye ark til ActiveSheet. Du kan derefter bruge ActiveSheet -objektet til at arbejde med det nye ark (nederst i denne artikel viser vi, hvordan du indsætter et nyt ark direkte i en variabel).

1 ActiveSheet.Name = "NewSheet"

Tilføj ark med navn

Du kan også definere et arknavn, mens du opretter det nye ark:

1 Sheets.Add.Name = "NewSheet"

Opret nyt ark med navn fra en celle

Eller brug en celleværdi til at navngive et nyt ark:

1 Sheets.Add.Name = område ("a3"). Værdi

Tilføj ark før / efter endnu et ark

Du vil måske også vælge, hvor det nye ark skal indsættes. Du kan bruge egenskaberne Efter eller Før til at indsætte et ark på en bestemt placering i projektmappen.

Indsæt ark efter et andet ark

Denne kode indsætter det nye ark EFTER et andet ark:

1 Ark.Add efter: = Ark ("Input")

Dette vil indsætte et nyt ark EFTER et andet ark og angive arkets navn:

1 Sheets.Add (After: = Sheets ("Input")). Name = "NewSheet"

Bemærk den ekstra parentes, der kræves i det andet eksempel (det første eksempel genererer en fejl, hvis den anden parentes tilføjes).

eller før:

1 Sheets.Add (Before: = Sheets ("Input")). Name = "NewSheet"

I disse eksempler navngav vi eksplicit det ark, der blev brugt til at bestemme arkplaceringen. Ofte vil du i stedet bruge arkindeksnummeret, så du kan indsætte arket i begyndelsen eller slutningen af ​​projektmappen:

Tilføj ark til slut på projektmappe

Sådan tilføjes et ark til slutningen af ​​projektmappen:

1 Ark.Add efter: = Ark (Sheets.Count)

Tilføj ark til begyndelsen af ​​projektmappen:

Sådan føjer du et ark til begyndelsen af ​​projektmappen:

1 Sheets.Add (Before: = Sheets (1)). Name = "FirstSheet"

Tilføj ark til variabel

Denne kode tildeler det nye ark til en variabel, når arket oprettes:

12 Dim ws Som regnearkIndstil ws = Sheets.Add

Herfra kan du referere til det nye ark med variablen 'ws':

1 ws.name = "VarSheet"

Flere eksempler på tilføjelsesark

Opret et ark, hvis det ikke allerede findes

Du vil måske kun oprette et ark, hvis det ikke allerede findes.

Opret regneark fra listen over navne

Den følgende rutine ser på indholdet i en enkelt kolonne, der konfigurerer Excel -regneark i den aktuelle projektmappe med disse navne. Det ringer til en anden funktion for at se, om der allerede findes et ark med det navn, og hvis det er tilfældet, er arket ikke oprettet.

1234567891011121314151617181920212223242526 Privat underkommandoButton1_Click ()Ring til CreateWorksheets (Sheets ("Sheet2"). Range ("A1: a10"))Afslut SubSub CreateWorksheets (Names_Of_Sheets As Range)Dim No_Of_Sheets_to_be_Added As IntegerDim Sheet_Name As StringDim i As IntegerNo_Of_Sheets_to_be_Added = Names_Of_Sheets.Rows.CountFor i = 1 Til No_Of_Sheets_to_be_AddedSheet_Name = Names_Of_Sheets.Cells (i, 1). Værdi'Tilføj kun ark, hvis det ikke allerede findes, og navnet er længere end nul tegnHvis (Sheet_Exists (Sheet_Name) = False) And (Sheet_Name "") SåWorksheets.Add (). Name = Sheet_NameAfslut HvisNæste iAfslut Sub
1234567891011121314 Funktionsark_eksisterer (WorkSheet_Name som streng) Som boolskDim Work_sheet Som regnearkSheet_Exists = FalskFor hvert arbejdsark i ThisWorkbook.WorksheetsHvis Work_sheet.Name = WorkSheet_Name SåSheet_Exists = SandtAfslut HvisNæsteAfslut funktion

Så hvis vi har følgende tekst i cellerne A1: A30 i ark 2:

Derefter oprettes følgende ark:

Bemærk, at selvom “Hund” vises to gange, oprettes der kun et ark.

Klik her for at downloade .XLS -filen til denne vejledning.

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave