Cum sa deblochezi mai multe sheet-uri dintr-o data folosind VBA?

Buna,

Am revenit dupa o saptamana de concediu cu forte proaspete. Si pentru ca este inceput de saptamana, m-am gandit sa va prezint o modalitate foarte usoara prin care se pot debloca simultan toate sheet-urile dintr-un fisier.

Am realizat de curand un fisier cu aproape 30 de sheet-uri toate protejate. Cum era normal, la scurt timp am realizat ca este nevoie sa adaug informatii prin o mare parte din sheet-uri. Cand am realizat cat timp o sa pierd cu deblocarea fiecarui sheet in parte, m-am apucat sa caut diverse variante ca sa pot face asta aproape instant.

Configurarea fisierului

Pentru ca acest truc sa functioneze, fisierul trebuie sa indeplineasca o conditie foarte importanta: toate sheet-urile sa fie protejate cu aceeasi formula. In cazul in care conditia este indeplinita urmati pasii de mai jos:

  1. Deschideti editorul VB – cea mai simpla modalitate pentru a deschide editorul se realizeaza folosind combinatia de taste ALT + F11.
  2. In bara de meniu selecteaza tab-ul Insert si apoi optiunea Module.insert_module
  3. In fereastra care se deschide copiaza codul de mai jos:
    • Sub unprotect_all_sheets()
      On Error GoTo booboo
      unpass = InputBox(“password”)
      For Each Worksheet In ActiveWorkbook.Worksheets
      Worksheet.Unprotect Password:=unpass
      Next
      Exit Sub
      booboo: MsgBox “There is a problem – check your password, capslock, etc.”
      End Sub
  4. Apoi apasa tasta F5 pentru a rula codul. Se va deschide o fereastra in care trebuie sa introduci parola. Daca parola introdusa de tine este gresita, va aparea un mesaj de eroare.

mesaj_eroare

Comentarii si sugestii

Impartaseste experienta ta sau alte sfaturi utile legate folosirea VBA-ului.

Print Friendly, PDF & Email

Leave a Reply

Your email address will not be published. Required fields are marked *