"Excel VBA" lapo pridėjimas, jei jo nėra (greiti žingsniai)

  • Pasidalinti
Hugh West

"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ū!

Hugh Westas yra labai patyręs Excel treneris ir analitikas, turintis daugiau nei 10 metų patirtį šioje srityje. Jis yra įgijęs apskaitos ir finansų bakalauro bei verslo administravimo magistro laipsnius. Hugh turi aistrą mokymui ir sukūrė unikalų mokymo metodą, kurį lengva sekti ir suprasti. Jo ekspertinės žinios apie „Excel“ padėjo tūkstančiams studentų ir specialistų visame pasaulyje tobulinti savo įgūdžius ir tobulėti savo karjeroje. Savo tinklaraštyje Hugh dalijasi savo žiniomis su pasauliu, siūlydamas nemokamus „Excel“ vadovėlius ir internetinius mokymus, kad padėtų asmenims ir įmonėms išnaudoti visą savo potencialą.