Kazalo
Excel VBA je zmogljivo in priročno orodje za hitro izvajanje nalog v velikem obsegu. Uporabite lahko več pogojev in na podlagi posameznih pogojev s pomočjo VBA dobite različne rezultate. Včasih boste morda želeli preveriti, ali v delovnem zvezku obstaja določen list. In če ne, boste morda morali ta list ustvariti. V tem članku vam bom pokazal vse korake za dodajte list če ne obstaja, z uporabo programa Excel VBA.
Excel VBA: Dodajanje lista, če ne obstaja (hiter pregled)
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Which Sheet Are You Looking For?", _ "Add Sheet If Not Exist", "Sheet5", , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "The ''" & addSheetName & _ "'" sheet hasje bil dodan, ker ni obstajal.", _ vbInformation, "Add Sheet If Not Exist" Else MsgBox "The ''" & addSheetName & _ "''sheet already exists in this workbook.", _ vbInformation, "Add Sheet If Not Exist" End If End Sub
Vstavite v nov modul in uporabite zgornjo kodo.
Prenesi delovni zvezek za prakso
Naš delovni zvezek za vadbo lahko brezplačno prenesete s tega mesta!
Dodajanje lista, če ne obstaja.xlsmKoraki za uporabo kode VBA za dodajanje listov v Excelu, če ne obstajajo
Recimo, da imate delovni zvezek, ki vsebuje 4 delovne liste z imeni januar, februar, marec in april. Vsak list vsebuje poročilo o prodaji za naslednji mesec. Zdaj morate v delovnem zvezku poiskati nekaj listov in dodati list, če ta ne obstaja. Za dosego tega lahko sledite spodnjim navodilom po korakih.
📌 1. korak: vstavite nov modul
Najprej morate vstaviti modul za pisanje kode VBA.
- To storite tako, da na samem začetku odprete Razvijalec zavihek>> Visual Basic orodje.
- Zaradi tega je Microsoft Visual Basic za aplikacije Prikaže se okno.
- Nato pojdite v Vstavite zavihek>> Modul orodje.
Tako je nov modul z imenom Modul1 je bil ustvarjen.
Preberite več: Kako dodati list z imenom v Excel VBA (6 preprostih načinov)
Podobna branja
- Ustvarjanje novega delovnega zvezka in shranjevanje z uporabo VBA v Excelu
- Excel VBA: Ustvarite nov delovni zvezek in ga poimenujte (6 primerov)
- Kako ustvariti nov list iz predloge z uporabo makra v Excelu
📌 Korak 2: Napišite in shranite zahtevano kodo VBA
Sedaj morate napisati kodo znotraj modula in jo shraniti.
- To storite tako, da kliknete na Modul1 in v okno za kodo zapišite naslednjo kodo.
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Which Sheet Are You Looking For?", _ "Add Sheet If Not Exist", "Sheet5", , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "The ''" & addSheetName & _ "'" sheet hasje bil dodan, ker ni obstajal.", _ vbInformation, "Add Sheet If Not Exist" Else MsgBox "The ''" & addSheetName & _ "''sheet already exists in this workbook.", _ vbInformation, "Add Sheet If Not Exist" End If End End
Pod
- Okno s kodo bo videti kot spodaj.
🔎 Razlaga kode:
♣ Segment 1:
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String
V tem delu smo razglasili ime makra in imena spremenljivk.
♣ Segment 2:
addSheetName = Application.InputBox("Kateri list iščete?", _"Dodaj list, če ne obstaja", "List5", , , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name
V tem delu smo ustvarili vnosno polje. V tem vnosnem polju lahko vnesemo ime datoteke, ki jo moramo poiskati.
♣ Segment 3:
If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "The ''" & addSheetName & _ "'' sheet has been added as it did not exist.", _ vbInformation, "Add Sheet If Not Exist"
V tem delu preverimo, ali zahtevani list obstaja v delovnem zvezku. Če ne, bo ustvaril zahtevani list in nam prikazal sporočilo o tej spremembi.
♣ Segment 4:
Else MsgBox "The ''" & addSheetName & _ "''sheet already exists in this workbook.", _ vbInformation, "Add Sheet If Not Exist" End If End Sub
V tem delu smo delali z rezultatom, če zahtevani list že obstaja v delovnem zvezku. V tem primeru se prikaže drugo okno s sporočilom, ki vas obvesti, da ta list obstaja. Poleg tega v tem delu pravilno zaključimo kodo.
- Nato pritisnite Ctrl + S.
- Kasneje je bila Microsoft Excel Prikaže se okno. Kliknite na Ne gumb.
- Zaradi tega je Shrani kot Prikaže se okno.
- Nato izberite Shrani kot tip: možnost kot .xlsm Nato kliknite na Shrani gumb.
Tako ste napisali in shranili zahtevano kodo.
Opomba:
Delovni zvezek programa Excel morate shraniti v .xlsm V nasprotnem primeru makro ne bo omogočen in koda ne bo delovala.
Preberite več: Excel VBA za dodajanje lista z imenom spremenljivke (5 idealnih primerov)
📌 Korak 3: Zagon kode
Zdaj morate zagnati kodo in preveriti rezultate.
- To storite tako, da najprej kliknete na Spustite ikona v oknu Microsoft Visual Basic za aplikacije okno.
- Zaradi tega je Makroji Prikaže se okno.
- Nato izberite AddSheetIfNotExist makro in kliknite na Spustite gumb.
- V tem trenutku je naše ustvarjeno okno za sporočila z imenom Dodaj list, če ne obstaja se prikaže. V tem primeru bi bila samodejna možnost List5 .
- Zdaj za preverjanje napišite "april" v besedilno polje in kliknite na Ok gumb.
- Nato se prikaže drugo okno s sporočilom, da list že obstaja.
- Kliknite na Ok gumb.
- Nato ponovno zaženite kodo in napišite "maj" v besedilnem polju ustvarjenega polja za sporočila. Nato kliknite na V REDU gumb.
- Zato se bo prikazalo še eno okno s sporočilom, ki vas bo obvestilo, da je "maj" list ni obstajal, zato je ustvaril ta list.
- Nato kliknite na V REDU gumb.
Na koncu lahko vidite, da ste dodali list, ki prej ni obstajal. Delovni zvezek bo zdaj videti takole.
Preberite več: Excel VBA: Dodajanje lista za zadnjim (3 idealni primeri)
Zaključek
V tem članku sem vam pokazal vse korake za dodajanje lista, če ne obstaja z Excel VBA. Preglejte celoten članek, da ga bolje razumete in dosežete želeni rezultat. Upam, da vam je ta članek koristen in informativen. Če imate dodatna vprašanja ali priporočila, me lahko kontaktirate.
Obiščite tudi ExcelWIKI za več takšnih člankov. Hvala!