VBA Protect Sheet - Suojaa salasanalla Excel-taulukko VBA: lla

Sisällysluettelo

Excel VBA -suojakalvo

Voimme suojata Excel-taulukon käyttämällä VBA-koodia, joka ei salli käyttäjän tehdä muutoksia laskentataulukon tietoihin, he voivat vain lukea raportin. Tätä varten meillä on sisäänrakennettu vba-menetelmä nimeltä "Protect".

Kuten me suojaamme laskentataulukojamme excelissä, samoin voimme käyttää VBA: ta suojaamaan laskentataulukojamme, se tehdään käyttämällä .protect-käskyä, on kaksi tapaa suojata arkki: yksi on salasanalla, ja toinen on ilman salasanaa, syntaksi suojata laskentataulukko on seuraava laskentataulukot (). Suojaa salasana.

Jaamme lopullisen loppuraportin yleensä käyttäjän tai lukijan kanssa. Kun jaamme lopullisen loppuraportin käyttäjän kanssa, toivomme, ettei käyttäjä tee mitään muutoksia tai manipuloi loppuraporttia. Tällaisessa tilanteessa kyse on luottamuksesta, eikö olekin?

Syntaksi

Suojalevy sisältää useita parametreja. Tämä on toisin kuin arkin suojaamaton. Katsotaanpa Protect-menetelmän syntaksia salasanalla.

Vau!!! Älä pelkää katsomalla syntaksia. Katsokaa kunkin argumentin selitystä alla.

  • Taulukon nimi: Ensinnäkin meidän on mainittava, mitä laskentataulukkoa aiomme suojata.
  • Salasana: Meidän on annettava salasana, jota käytämme suojaamiseen. Jos ohitamme tämän parametrin, excel lukitsee taulukon ilman salasanaa, ja suojaamatta sitä, suojata sitä, mutta suojaa sitä pyytämättä salasanaa.
  • Huomaa: Muista antamasi salasana, koska jos unohdit, sinun on käytävä läpi useita vaikeita tapoja.
  • Piirustusobjekti: Jos haluat suojata laskentataulukon objekteja, voit välittää argumentin TOSI tai muuten EPÄTOSI. Oletusarvo on TOSI.
  • Sisältö: Suojaa laskentataulukon sisältö asettamalla parametriksi TOSI tai muuten EPÄTOSI. Oletusarvo on FALSE. Tämä suojaa vain lukittuja soluja. Oletusarvo on TOSI.
  • Skenaariot: Jos Excel-skenaarioissa on mitä-jos-analyysejä, voimme myös suojata niitä. Suojaa TOSI tai muuten EPÄTOSI. Oletusarvo on TOSI.
  • Vain käyttöliittymä: Jos haluat suojata muun käyttöliittymän kuin makron, sen pitäisi olla TOSI. Jos tämä argumentti jätetään pois, se suojaa sekä makroja että käyttöliittymää. Jos asetat argumentiksi TOSI, se suojaa vain käyttöliittymää. Oletusarvo on FALSE.
  • Salli solujen muotoilu: Jos haluat antaa käyttäjän muotoilla solua, voit asettaa parametriksi TOSI tai muuten EPÄTOSI. Oletusarvo on FALSE.
  • Salli sarakkeiden muotoilu: Jos haluat antaa käyttäjän muotoilla minkä tahansa suojatun taulukon sarakkeen, voit asettaa parametriksi TOSI tai muuten EPÄTOSI. Oletusarvo on FALSE.
  • Salli muotoilurivit: Jos haluat antaa käyttäjän muotoilla minkä tahansa suojatun taulukon rivejä, voit asettaa parametriksi TOSI tai muuten EPÄTOSI. Oletusarvo on FALSE.
  • Salli lisätä sarakkeita VBA: ssa: haluat antaa käyttäjän lisätä uusia sarakkeita, sinun on sitten asetettava tosi. Oletusarvo on FALSE.
  • Salli lisäysrivit: Jos haluat antaa käyttäjän lisätä uusia rivejä, sinun on määritettävä tämä arvoksi TOSI. Oletusarvo on FALSE.
  • Salli hyperlinkkien lisääminen : Jos haluat antaa käyttäjän lisätä hyperlinkkejä, sinun on määritettävä tämä arvoksi TOSI. Oletusarvo on FALSE.
  • Salli sarakkeiden poistaminen: Jos haluat antaa käyttäjän poistaa sarakkeita VBA: ssa, sinun on asetettava tämä arvoksi TOSI. Oletusarvo on FALSE.
  • Salli rivien poistaminen: Jos haluat sallia käyttäjän poistaa rivejä, sinun on asetettava tämä arvoksi TOSI. Oletusarvo on FALSE.
  • Salli lajittelu: Jos haluat antaa käyttäjän lajitella tiedot, sinun on määritettävä tämä arvoksi TOSI. Oletusarvo on FALSE.
  • Salli suodatus: Jos haluat antaa käyttäjän suodattaa tiedot, sinun on määritettävä tämä arvoksi TOSI. Oletusarvo on FALSE.
  • Salli pivot-taulukoiden käyttö: Jos haluat antaa käyttäjän käyttää pivot-taulukoita, sinun on asetettava tämä arvoksi TOSI. Oletusarvo on FALSE.

Kuinka suojata arkki VBA-koodilla?

Vaihe 1: Valitse suojattava arkki

Arkin suojaamiseksi ensimmäinen askel on päättää, mikä arkki on suojattava salasanalla, ja meidän on kutsuttava arkki sen nimellä käyttämällä VBA-laskentataulukko-objektia.

Oletetaan esimerkiksi, että haluat suojata arkin nimeltä ”Master Sheet”, sinun on mainittava taulukon nimi kuten alla.

Vaihe 2: Määritä laskentataulukon muuttuja

Kun olet maininnut laskentataulukon nimen, laita piste, mutta emme näe IntelliSense-luetteloa, jonka kanssa työskennellä. Tämä vaikeuttaa työtä. Määritä muuttuja laskentataulukoksi saadaksesi pääsyn IntelliSense-luetteloon.

Koodi:

Sub Protect_Example1 () Dim Ws laskentataulukon lopussa Sub

Vaihe 3: Anna taulukkoviite

Aseta nyt muuttujan laskentataulukon viittaus laskentataulukoiksi ("Master Sheet") .

Koodi:

Sub Protect_Example1 () Dim Ws kuten laskentataulukko Ws = laskentataulukot ("Master Sheet") End Sub

Nyt muuttuja “Ws” pitää sisällään taulukon, jonka nimi on ”Master Sheet”. Tämän muuttujan avulla pääsemme IntelliSense-luetteloon.

Vaihe 4: Valitse Suojaustapa

Valitse Suojaa-menetelmä IntelliSense-luettelosta.

Vaihe 5: Syötä salasana

Määritä salasana lainausmerkeissä.

Koodi:

Sub Protect_Example1 () Himmennä Ws laskentataulukkoa Ws = laskentataulukot ("Master Sheet") Ws.Protect Password: = "MyPassword" End Sub

Vaihe 6: Suorita koodi

Suorita koodi manuaalisesti tai käyttämällä pikanäppäintä F5, se suojaa sitten arkkia, jonka nimi on ”Pääsivu”.

Kun arkki on suojattu, jos haluamme tehdä muutoksia, se näyttää virheilmoituksen, kuten alla on esitetty.

Jos haluat suojata useamman kuin yhden arkin, meidän on käytettävä silmukoita. Alla on esimerkkikoodi arkin suojaamiseksi.

Sub Protect_Example2 () Himmennä Ws laskentataulukoksi jokaiselle ActiveWorkbookin W: lle. Työselosteet Ws.Protect Salasana: = "Oma salasana0" Seuraava Ws End Sub

Huomaa: Käytä muita parametreja kokeiluun.

Mielenkiintoisia artikkeleita...