Cellskydd endast för formler som använder VBA i Microsoft Excel

Innehållsförteckning

I den här artikeln kommer vi att använda ändringshändelse för kalkylblad för att skydda celler som innehåller formler.

Raw data består av försäljningsdata för anställda, som inkluderar bifurikering efter månad och år.

Vi vill ta reda på den totala försäljningen efter månad och år.

Vi har använt summa -funktionen för att beräkna den totala försäljningen på månads- och årsbasis. Ändra händelse för kalkylblad används för att skydda celler som innehåller formler. När vi försöker redigera en cell som innehåller en formel får vi ett popup-meddelande som säger att cellvärdet inte kan ändras.

Kodförklaring

rng.HasFormula

HasFormula -metoden returnerar True om en cell innehåller en formel. Annars kommer den tillbaka False.

ActiveSheet.Protect

Ovanstående kod används för att skydda en cell.

Notera: En cell skyddas endast om den är låst. Så innan du skyddar en cell måste den vara låst.

ActiveSheet.Onprotect

Ovanstående kod används för att avskydda en cell.

Följ koden nedan

 'Lägg till nedanstående kod i kalkylbladsmodulen Alternativ Explicit Private Sub Worksheet_SelectionChange (ByVal Target As Range) Dim rng As Range for each rng In Target.Cells If rng.HasFormula Then ActiveSheet.Protect Else ActiveSheet.On Protect End If Next rng End Sub 

Om du gillade den här bloggen, dela den med dina vänner på Facebook. Du kan också följa oss på Twitter och Facebook.

Vi vill gärna höra från dig, låt oss veta hur vi kan förbättra vårt arbete och göra det bättre för dig. Skriv till oss på e -postwebbplatsen

Du kommer att bidra till utvecklingen av webbplatsen, dela sidan med dina vänner

wave wave wave wave wave