2012-11-30 17 views
7

All'interno di un foglio di lavoro di Excel, vorrei proteggere una cella (A1) da Modifica e un'altra cella (B1) da Formattazione. Ciò significa che l'utente:Protezione cella diversa nello stesso foglio di lavoro

  • non può modificare il valore di A1
  • possibile modificare il valore di B1
  • non può modificare la formattazione di B1

Il "Proteggi foglio "l'opzione consente di proteggere tutte le celle bloccate di un intero foglio, quindi A1 e B1, se bloccati, avranno lo stesso livello di protezione (sia contro la formattazione che per la modifica).

C'è un modo per impostare protezioni individuali per una specifica cella o intervallo, o almeno ottenere lo stesso comportamento?

Ulteriori informazioni:

  • una soluzione che utilizza VBA è OK (anche se sembra che il metodo Worksheet.Protect ha le stesse limitazioni ...)
  • La cella A1 (per la quale modifica deve essere evitato) può essere protetto dalla formattazione o meno (non importa).
  • dovrebbe funzionare con Excel 2003.

risposta

2

Bloccato non affronta la formattazione fino a quando non si hanno le permetteranno Formato celle controllato o attivati ​​in VBA. Pertanto puoi semplicemente sbloccare B1 e non sarai in grado di modificare il formato semplicemente consentendo agli utenti di selezionare le celle bloccate e sbloccate abilitate.

Sub protectorate() 

    activesheet.Range("B1").Locked = False 

    With ActiveSheet 
     .Protect 
    End With 


End Sub 

Questo consentirà di evitare di formattazione e valore cambia sul foglio intero, tranne il valore di B1, sarà ancora permetterà di modificare il valore di B1.

+2

perché utilizzare VBA per questo? – brettdj

+0

Sì! Era così semplice! :-) Ma questo significa anche che non posso avere protezioni ** Formatting ** diverse all'interno dello stesso foglio: o formattabili o non formabili affatto. Spero di non averne mai bisogno ... @brettdj: sì, funziona anche impostando le proprietà Locked per la cella senza usare VBA. –

+0

@brettdj Può essere fatto attraverso il menu. Suppongo che la sua abitudine personale di fare protezione attraverso VBA. Modificherò con istruzioni migliori per farlo attraverso il menu – scott

Problemi correlati