Come bloccare o proteggere le celle dopo l'inserimento dei dati in Excel?
Supponiamo che tu abbia un foglio di lavoro e che solo un certo intervallo di celle vuote richieda l'inserimento dei dati, e dopo aver completato l'inserimento, desideri che queste celle vengano bloccate automaticamente per evitare ulteriori modifiche. Come puoi ottenere questo risultato? Questo articolo può aiutarti.
Blocca o proteggi le celle dopo l'inserimento dei dati con il codice VBA
Blocca o proteggi le celle dopo l'inserimento dei dati con il codice VBA
Ad esempio, l'intervallo specifico di celle vuote è A1:F8. Procedi come segue per bloccare queste celle dopo l'inserimento dei dati in Excel.
1. Per prima cosa, sblocca questo intervallo selezionando le celle, facendo clic con il tasto destro del mouse, quindi scegli Imposta formato cella dal menu contestuale, e nella finestra di dialogo Imposta formato cella, deseleziona la casella Blocca sotto la scheda Protezione, infine fai clic sul pulsante OK. Vedi screenshot:
2. Clicca su Revisione > Proteggi Foglio. E specifica una password per proteggere questo foglio di lavoro.
3. Fai clic con il tasto destro del mouse sulla scheda del foglio, seleziona Visualizza Codice dal menu contestuale. Quindi copia e incolla il seguente codice VBA nella finestra del Codice. Vedi screenshot:
Codice VBA: Blocca o proteggi le celle dopo l'inserimento dei dati
Dim mRg As Range
Dim mStr As String
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Not Intersect(Range("A1:F8"), Target) Is Nothing Then
Set mRg = Target.Item(1)
mStr = mRg.Value
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Range)
Dim xRg As Range
On Error Resume Next
Set xRg = Intersect(Range("A1:F8"), Target)
If xRg Is Nothing Then Exit Sub
Target.Worksheet.Unprotect Password:="123"
If xRg.Value <> mStr Then xRg.Locked = True
Target.Worksheet.Protect Password:="123"
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Range("A1:F8"), Target) Is Nothing Then
Set mRg = Target.Item(1)
mStr = mRg.Value
End If
End Sub
Nota: Nel codice, “A1:F8” è l'intervallo in cui devi inserire i dati; e “123” è la password per il foglio di lavoro protetto. Modificali secondo necessità.
4. Premi contemporaneamente i tasti Alt + Q per chiudere la finestra Microsoft Visual Basic for Applications.
Dopo aver completato l'inserimento dei dati nelle celle dell'intervallo A1:F8, verranno bloccate automaticamente. Riceverai una finestra di dialogo di avviso se provi a modificare il contenuto di qualsiasi cella di questo intervallo. Vedi screenshot:
Articoli correlati:
- Come bloccare tutti i riferimenti delle celle nelle formule contemporaneamente in Excel?
- Come bloccare o sbloccare le celle in base ai valori di un'altra cella in Excel?
- Come bloccare un'immagine all'interno di una cella in Excel?
I migliori strumenti per la produttività in Office
Migliora le tue competenze su Excel con Kutools per Excel e sperimenta un nuovo livello di efficienza. Kutools per Excel offre oltre300 funzionalità avanzate per aumentare la produttività e risparmiare tempo. Clicca qui per ottenere la funzione di cui hai più bisogno...
Office Tab porta l’interfaccia a schede su Office, rendendo il tuo lavoro molto più semplice
- Abilita la modifica a schede e la lettura in Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
- Apri e crea più documenti in nuove schede della stessa finestra, invece che in nuove finestre.
- Aumenta la tua produttività del50% e ti fa risparmiare centinaia di clic ogni giorno!