Proteggere le formule su un foglio di lavoro


Un gentile lettore mi sottopone questo quesito:

E' possibile una macro veloce per proteggere le celle solo ed esclusivamente con le formule?

 

Questa macro permette di individuare le celle che contengono delle formule (sono quelle che contengono qualcosa che comincia con un "=" ovviamente!) dalle altre e di impostare la protezione solo su queste.

Come ultima cosa la macro protegge il foglio senza utilizzare password per rendere attiva la protezione:

____________________________________

 

Sub Proteggi_forumle()
Dim a As Range
For Each a In ActiveSheet.UsedRange
    If Left(a.Formula, 1) <> "=" Then
       a.Locked = False
    Else
       a.Locked = True
    End If
Next

ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

____________________________________

 

Come utilizzare la macro:

1. Copiare la macro nel proprio file PERSONAL.XLS (si veda la pagina deidicata)

2. Posizionarsi sul foglio da proteggere

3. Eseguire la macro premendo ALT+F8 e selezionando Proteggi_Formule

 

Attenzione: la macro non funziona nel caso in cui ci siano delle "celle unite". Rimuovete prima l'unione celle da tutto il foglio di lavoro prima di eseguire la macro