Turinys
"Excel VBA" yra galingas ir patogus įrankis, leidžiantis gana greitai atlikti užduotis dideliais kiekiais. Naudodami VBA galite taikyti kelias sąlygas ir pagal atskiras sąlygas gauti skirtingus rezultatus. Kartais galite norėti patikrinti, ar jūsų darbaknygėje yra tam tikras lapas. Jei ne, gali tekti tą lapą sukurti. Šiame straipsnyje parodysiu visus veiksmus, kaip pridėti lapą jei jos nėra, naudodami "Excel VBA".
"Excel VBA": pridėti lapą, jei jo nėra (greita peržiūra)
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Kokio lapo ieškote?", _ "Add Sheet If NotExist", "Sheet5", , , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "The ''" & addSheetName & _ "''" sheet hasbuvo pridėtas, nes jis neegzistuoja.", _ 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 End Sub
Įterpkite į naują modulį, kad pritaikytumėte pirmiau pateiktą kodą.
Atsisiųsti praktikos sąsiuvinį
Praktikos sąsiuvinį galite nemokamai atsisiųsti iš čia!
Pridėti lapą, jei jo nėra.xlsmŽingsniai, kaip taikyti VBA kodą, kad "Excel" pridėtumėte lapą, jei jo nėra
Tarkime, turite darbaknygę, kurioje yra 4 lapai pavadinimais sausis, vasaris, kovas ir balandis. Kiekviename lape yra kito mėnesio pardavimų ataskaita. Dabar reikia surasti kai kuriuos darbaknygės lapus ir pridėti lapą, jei jo nėra. Norėdami tai atlikti, galite vadovautis toliau pateiktomis gairėmis.
📌 1 veiksmas: įterpkite naują modulį
Pirmiausia reikia įterpti modulį, kad galėtumėte rašyti VBA kodą.
- Norėdami tai padaryti, pačioje pradžioje eikite į Kūrėjas skirtukas>> "Visual Basic įrankis.
- Dėl to "Microsoft Visual Basic for Applications bus rodomas langas.
- Vėliau eikite į Įdėkite skirtukas>> Modulis įrankis.
Taigi, naujas modulis, pavadintas Modulis1 buvo sukurtas.
Skaityti daugiau: Kaip pridėti lapą su pavadinimu "Excel VBA" (6 paprasti būdai)
Panašūs skaitiniai
- Naujo sąsiuvinio sukūrimas ir išsaugojimas naudojant VBA programoje "Excel
- "Excel VBA": sukurkite naują darbo knygą ir suteikite jai pavadinimą (6 pavyzdžiai)
- Kaip sukurti naują lapą iš šablono naudojant "Excel" makrokomandą
📌 2 žingsnis: parašykite ir išsaugokite reikiamą VBA kodą
Dabar reikia parašyti kodą modulio viduje ir jį išsaugoti.
- Norėdami tai padaryti, spustelėkite Modulis1 parinktį ir kodo lange įrašykite šį kodą.
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String addSheetName = Application.InputBox("Kokio lapo ieškote?", _ "Add Sheet If NotExist", "Sheet5", , , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name If requiredSheetName = "" Then Worksheets.Add.Name = addSheetName MsgBox "The ''" & addSheetName & _ "''" sheet hasbuvo pridėtas, nes jis neegzistuoja.", _ 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
Sub
- Todėl kodo langas atrodys taip.
🔎 Kodo paaiškinimas:
♣ 1 segmentas:
Sub AddSheetIfNotExist() Dim addSheetName As String Dim requiredSheetName As String
Šioje dalyje deklaravome makrokomandos pavadinimą ir kintamųjų vardus.
♣ 2 segmentas:
addSheetName = Application.InputBox ("Kuris lapas ieškomas?", _ "Add Sheet If Not Exist", "Sheet5", , , , , , 2) On Error Resume Next requiredSheetName = Worksheets(addSheetName).Name
Šioje dalyje sukūrėme įvesties lauką. Šiame įvesties lauke galime įvesti failo, kurį reikia rasti, pavadinimą.
♣ 3 segmentas:
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"
Šioje dalyje patikriname, ar reikiamas lapas egzistuoja darbaknygėje. Jei ne, sukuriamas reikiamas lapas ir parodomas pranešimas apie šį pakeitimą.
♣ 4 segmentas:
Else MsgBox "The ''" & addSheetName & _ "''sheet already exists in this workbook.", _ vbInformation, "Add Sheet If Not Exist" End If End Sub
Šioje dalyje dirbome su rezultatu, jei reikiamas lapas jau egzistuoja sąsiuvinyje. Tokiu atveju bus rodomas kitas pranešimo langas, informuojantis, kad šis lapas egzistuoja. Be to, šioje dalyje tinkamai užbaigiame kodą.
- Po to paspauskite Ctrl + S.
- Vėliau "Microsoft Excel Atsivers langas. Spustelėkite Ne mygtuką.
- Dėl to Išsaugoti kaip bus rodomas langas.
- Po to pasirinkite Išsaugoti kaip tipą: parinktį kaip .xlsm formatą. Vėliau spustelėkite Išsaugoti mygtuką.
Taigi, parašėte ir išsaugojote reikiamą kodą.
Pastaba:
"Excel" darbaknygę turite išsaugoti .xlsm Priešingu atveju makrokomandas nebus įjungtas ir kodas neveiks.
Skaityti daugiau: "Excel VBA" lapo pridėjimas su kintamojo pavadinimu (5 idealūs pavyzdžiai)
📌 3 žingsnis: paleiskite kodą
Dabar reikia paleisti kodą ir patikrinti rezultatus.
- Norėdami tai padaryti, pirmiausia spustelėkite Paleisti piktogramą "Microsoft Visual Basic for Applications langas.
- Dėl to Makrokomandos bus rodomas langas.
- Vėliau pasirinkite AddSheetIfNotExist makrokomandą ir spustelėkite Paleisti mygtuką.
- Šiuo metu mūsų sukurtas pranešimo langelis, pavadintas Pridėti lapą Jei nėra Čia automatinė parinktis būtų Lapas5 .
- Dabar, norėdami patikrinti, rašykite "April" teksto laukelyje ir spustelėkite Gerai mygtuką.
- Vėliau pamatysite, kad pasirodys kitas pranešimo langas, kuriame bus pranešta, kad lapas jau egzistuoja.
- Spustelėkite Gerai mygtuką.
- Vėliau dar kartą paleiskite kodą ir parašykite "Gegužė" sukurto pranešimo langelio teksto laukelyje. Vėliau spustelėkite GERAI mygtuką.
- Dėl to bus rodomas kitas pranešimo langas, kuriame bus informuojama, kad "Gegužė" lapas neegzistavo, todėl buvo sukurtas šis lapas.
- Po to spustelėkite GERAI mygtuką.
Galiausiai matote, kad pridėjote lapą, kurio anksčiau nebuvo. Dabar darbo knyga atrodys taip.
Skaityti daugiau: "Excel VBA": pridėti lapą po paskutinio (3 idealūs pavyzdžiai)
Išvada
Taigi, šiame straipsnyje parodžiau visus veiksmus, kaip pridėti lapą, jei jo nėra, naudojant "Excel VBA". Atidžiai peržiūrėkite visą straipsnį, kad geriau jį suprastumėte ir pasiektumėte norimą rezultatą. Tikiuosi, kad šis straipsnis jums bus naudingas ir informatyvus. Jei turite papildomų klausimų ar rekomendacijų, nedvejodami susisiekite su manimi.
Ir apsilankykite ExcelWIKI daugiau tokių straipsnių kaip šis. Ačiū!