Full de protecció VBA | Protegiu amb contrasenya el full Excel mitjançant VBA

Full de protecció VBA d'Excel

Podem protegiu el full Excel mitjançant codi vba cosa que no permet a l’usuari fer cap canvi a les dades del full de càlcul, tot el que pot fer és llegir l’informe. Per a això, tenim un mètode vba integrat anomenat "Protegir".

De la mateixa manera que protegim els nostres fulls de càlcul en Excel, podem utilitzar VBA per protegir els nostres fulls de treball, es fa mitjançant una instrucció .protect, hi ha dos mètodes per protegir el full, un és amb contrasenya i un altre és sense contrasenya, la sintaxi per protegir un full de treball. és el següent Fulls de treball (). Protegiu la contrasenya.

Normalment compartim l’informe final final amb l’usuari o el lector. Quan compartim l'informe final final amb l'usuari, desitgem que l'usuari no faci cap modificació ni manipuli l'informe final. En aquest cas, es tracta de confiança, oi?

Sintaxi

La protecció del full implica diversos paràmetres per proporcionar-lo, a diferència de la desprotecció del full. Vegem la sintaxi del mètode Protect amb una contrasenya.

Vaja !!! No us deixeu intimidar mirant la sintaxi. Mireu l’explicació de cada argument a continuació.

  • Nom del full de treball: En primer lloc, hem d’esmentar quin full de treball protegirem.
  • Contrasenya: Hem d’introduir la contrasenya que fem servir per protegir-la. Si ignorem aquest paràmetre, Excel bloquejarà el full sense contrasenya i, mentre es desprotegeix el full, es desprotegirà sense demanar cap contrasenya.
  • Nota: Recordeu la contrasenya que esteu donant, perquè si l'heu oblidat, haureu de recórrer diverses maneres difícils.
  • Objecte de dibuix: Si voleu protegir els objectes del full de treball, podeu passar l'argument com a CERT o bé FALS. El valor per defecte és TRUE.
  • Contingut: Per protegir el contingut del full de càlcul, configureu el paràmetre com a CERT o bé FALS. El valor per defecte és FALS. Això protegirà només les cel·les bloquejades. El valor per defecte és TRUE.
  • Escenaris: Si hi ha alguna anàlisi sobre si els escenaris excel també els podem protegir. Per protegir VERITAT o bé FALS. El valor per defecte és TRUE.
  • Només interfície d'usuari: Si voleu protegir la interfície d'usuari que no sigui una macro, hauria de ser CERT. Si s'omet aquest argument, protegirà tant les macros com la interfície d'usuari. Si configureu l'argument com a CERT, només protegirà la interfície d'usuari. El valor per defecte és FALS.
  • Permet formatar cel·les: Si voleu permetre a l'usuari donar format a la cel·la, podeu establir el paràmetre en TRUE o bé FALSE. El valor per defecte és FALS.
  • Permetre el format de columnes: Si voleu permetre a l'usuari donar format a qualsevol columna del full protegit, podeu establir el paràmetre en TRUE o en FALS. El valor per defecte és FALS.
  • Permet formatar files: Si voleu permetre a l'usuari donar format a qualsevol fila del full protegit, podeu establir el paràmetre en TRUE o FALSE. El valor per defecte és FALS.
  • Permet Insereix columnes a VBA: voleu permetre a l’usuari inserir noves columnes, llavors heu d’establir-ho a TRUE. El valor per defecte és FALS.
  • Permet inserir files: Si voleu permetre a l’usuari inserir files noves, haureu d’establir-ho en TRUE. El valor per defecte és FALS.
  • Permet inserir hipervincles: Si voleu permetre a l’usuari inserir hiperenllaços, heu d’establir-lo a TRUE. El valor per defecte és FALS.
  • Permet suprimir columnes: Si voleu permetre a l’usuari suprimir columnes de VBA, haureu d’establir-ho en TRUE. El valor per defecte és FALS.
  • Permet suprimir files: Si voleu permetre a l’usuari suprimir files, haureu d’establir-ho en TRUE. El valor per defecte és FALS.
  • Permet ordenar: Si voleu permetre a l’usuari ordenar les dades, heu d’establir-la en TRUE. El valor per defecte és FALS.
  • Permet el filtratge: Si voleu permetre a l’usuari filtrar les dades, haureu d’establir-lo en TRUE. El valor per defecte és FALS.
  • Permetre l'ús de taules dinàmiques: Si voleu permetre a l’usuari utilitzar taules dinàmiques, heu d’establir-ho en TRUE. El valor per defecte és FALS.

Com protegir el full mitjançant el codi VBA?

Podeu descarregar aquesta plantilla Excel de fulls de protecció VBA aquí: plantilla Excel de fulls de protecció VBA

Pas 1: seleccioneu Full que cal protegir

Per protegir el full, el primer pas és decidir quin full hem de protegir mitjançant una contrasenya i hem de trucar al full pel seu nom mitjançant l’objecte de full de treball vba.

Per exemple, suposem que voleu protegir el full anomenat "Full principal", llavors heu d'esmentar el nom del full de treball com el següent.

Pas 2: definiu la variable del full de treball

Després d’esmentar el nom del full de càlcul, poseu un punt, però no veiem cap llista IntelliSense per treballar, cosa que dificulta la feina. Per accedir a la llista IntelliSense es defineix la variable com un full de treball.

Codi:

 Sub Protect_Example1 () Atenueu Ws com a final del full de treball Sub 

Pas 3: doneu referència al full de treball

Ara configureu la referència del full de treball a la variable com a Fulls de treball ("Full principal").

Codi:

 Sub Protect_Example1 () Atenuar Ws com a conjunt de fulls de treball Ws = Fulls de treball ("Full principal") Finalitzar sub 

Ara la variable "Ws" manté la referència del full de treball anomenat "Full principal". En utilitzar aquesta variable podem accedir a la llista intellisense.

Pas 4: seleccioneu Mètode de protecció

Seleccioneu el mètode "Protegeix" de la llista IntelliSense.

Pas 5: Introduïu la contrasenya

Especifiqueu la contrasenya entre cometes dobles.

Codi:

 Sub Protect_Example1 () Atenuar Ws com a conjunt de fulls de treball Ws = Fulls de treball ("Full principal") Ws.Protect Password: = "La meva contrasenya" Finalitzar sub 

Pas 6: executeu el codi

Executeu el codi manualment o utilitzant la tecla de drecera F5, protegirà el full anomenat com a "Full principal".

Quan el full està protegit, si volem fer alguna modificació, es mostra un missatge d'error com es mostra a continuació.

Si voleu protegir més d’un full, hem d’utilitzar bucles, a continuació es mostra el codi d’exemple per protegir el full.

 Sub Protect_Example2 () Atenueu Ws com a full de treball per a cada Ws a ActiveWorkbook.Whesheets Ws.Protect Password: = "El meu Passw0rd" Següent Ws End Sub 

Nota: Utilitzeu altres paràmetres per experimentar.