VBA neleisti keisti darbalapio pavadinimo „Microsoft Excel“

Anonim

Kartais mūsų VBA kodas ar kai kurios formulės priklauso nuo darbalapio pavadinimo. Jei darbalapio pavadinimas pasikeičia, gali pasikeisti VBA kodo ar formulės elgesys. Taigi labai svarbu žinoti, kaip neleisti vartotojui pakeisti lapo pavadinimo.

Šiame straipsnyje mes išmoksime naudoti VBA kodą, kad darbalapio pavadinimas išliktų tas pats, t. Y. Jei kas nors nori pakeisti pavadinimą, jam to daryti neleidžiama.

Toliau pateikiamas darbalapio momentinis vaizdas, kuriame yra du lapai; Nuolatinis ir laikinas

Turime atlikti toliau nurodytus veiksmus, kad pataisytumėte nuolatinio lapo pavadinimą į „Nuolatinis“.

  • Spustelėkite skirtuką Kūrėjas
  • Kodo grupėje pasirinkite „Visual Basic“

  • Įveskite šį kodą į dabartinį darbalapio modulį


Privatus antrinis darbalapis_SelectionChange („ByVal Target As Range“)
Jei Sheet1.Name "Nuolatinis" Tada
Sheet1.Name = "Nuolatinis"
Pabaiga Jei
Pabaiga Sub

  • Nukopijavus kodą; jei bandysime pakeisti „Nuolatinio“ lapo pavadinimą, „Excel“ mums neleis.

Kaip tai veikia?

Čia mes naudojame worksheet_SelectionChange įvykį. Šis įvykis suaktyvinamas pakeitus lapo pasirinkimą.

Šiuo atveju tikriname, ar lapo pavadinimas yra „Nuolatinis“, ar ne. Jei ne, pakeisime lapo pavadinimą į „Nuolatinis“, kitaip nieko neįvyks. Lengvas peasy!

Taigi taip, vaikinai, taip galite užkirsti kelią lapo pavadinimo pakeitimui. Tikiuosi, kad buvau pakankamai aiškinantis. Jei turite kokių nors abejonių, praneškite man toliau pateiktame komentarų skyriuje.

Atsisiuntimo pavyzdys