Protecția celulei numai pentru formule care utilizează VBA în Microsoft Excel

Cuprins

În acest articol, vom folosi evenimentul de schimbare a foii de lucru pentru a proteja celulele care conțin formule.

Datele brute constau în date despre vânzările angajaților, care includ bifuricarea în funcție de lună și an.

Vrem să aflăm vânzările totale atât pe lună, cât și pe an.

Am folosit funcția sumă pentru a calcula vânzările totale lunar și anual. Evenimentul de schimbare a foii de lucru este utilizat pentru a proteja celulele care conțin formule. Când încercăm să edităm o celulă care conține o formulă, vom primi un mesaj pop-up, care spune că valoarea celulei nu poate fi modificată.

Explicarea codului

rng.HasFormula

Metoda HasFormula va reveni True dacă o celulă conține o formulă. În caz contrar, va reveni False.

ActiveSheet.Protect

Codul de mai sus este utilizat pentru a proteja o celulă.

Notă: O celulă va fi protejată numai dacă este blocată. Deci, înainte de a proteja o celulă, aceasta trebuie blocată.

ActiveSheet.Deprotejează

Codul de mai sus este utilizat pentru a proteja o celulă.

Vă rugăm să urmați codul de mai jos

 'Adăugați codul de mai jos în modulul de foaie de lucru Opțiune Explicit Private Private Worksheet_SelectionChange (ByVal Target As Range) Dim rng As Range For Each rng in Target.Cells If rng.HasFormula Then ActiveSheet.Protect Altse ActiveSheet. Unprotect End If Next rng End Sub 

Dacă ți-a plăcut acest blog, distribuie-l prietenilor tăi de pe Facebook. De asemenea, ne puteți urmări pe Twitter și Facebook.

Ne-ar plăcea să aflăm de la dvs., să ne anunțați cum putem îmbunătăți munca noastră și o putem îmbunătăți. Scrieți-ne pe site-ul de e-mail

Vei ajuta la dezvoltarea site-ului, partajarea pagina cu prietenii

wave wave wave wave wave