Come proteggere le celle in base alla data in Excel?
Normalmente, possiamo proteggere il foglio di lavoro per impedire ad altri di modificare o alterare i valori delle celle, ma a volte è necessario proteggere le celle in base alla data. Ad esempio, voglio proteggere tutte le altre celle e consentire solo la modifica dei valori delle celle con la data di oggi, come mostrato nello screenshot seguente. Questo articolo spiegherà come proteggere le celle in base alla data.
Proteggi tutte le righe tranne quella della data di oggi con il codice VBA
Proteggi tutte le righe con date passate tramite codice VBA
Proteggi tutte le righe tranne quella della data di oggi con il codice VBA
Permetti solo la modifica della riga corrispondente alla data di oggi; il seguente codice può aiutarti, procedi come segue:
1. Fai clic con il tasto destro sulla scheda del foglio in cui desideri proteggere le celle in base alla data, quindi scegli Visualizza Codice dal menu contestuale. Nella finestra Microsoft Visual Basic for Applications che si apre, copia e incolla il seguente codice nel Modulo vuoto:
Codice VBA: Proteggi tutte le righe tranne quella della data di oggi:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Updateby Extendoffice 20161025
If Range("E" & Selection.Row).Value <> Date Then
ActiveSheet.Protect Password:="111111"
MsgBox "Only today's date row can be edited!", vbInformation, "Kutools for Excel"
ElseIf Range("E" & Selection.Row).Value = Date Then
ActiveSheet.Unprotect Password:="111111"
ActiveSheet.EnableSelection = xlNoRestrictions
End If
End Sub
Nota: Nel codice sopra, la lettera E è l'intestazione della colonna dove si trova la data, “111111” è la password per proteggere questo foglio. Puoi modificarli secondo necessità.
2. Quindi salva e chiudi questa finestra del codice.
(1.) Se fai clic su altre celle al di fuori della riga della data di oggi, apparirà una finestra di avviso per ricordarti che la cella non può essere modificata, vedi screenshot:
(2.) Se fai clic e modifichi la riga corrispondente alla data di oggi, verrà modificata correttamente, vedi screenshot:

Sblocca la Magia di Excel con Kutools AI
- Esecuzione Intelligente: Esegui operazioni sulle celle, analizza i dati e crea grafici — tutto guidato da semplici comandi.
- Formule Personalizzate: Genera formule su misura per ottimizzare i tuoi flussi di lavoro.
- Codifica VBA: Scrivi e implementa codice VBA senza sforzo.
- Interpretazione delle Formule: Comprendi facilmente formule complesse.
- Traduzione del Testo: Superare le barriere linguistiche all'interno dei tuoi fogli di calcolo.
Proteggi tutte le righe con date passate tramite codice VBA
Se hai bisogno di proteggere tutte le righe con date passate e permettere solo la modifica delle righe relative alla data di oggi e alle date future, applica il seguente codice VBA:
1. Fai clic con il tasto destro sulla scheda del foglio in cui desideri proteggere le celle in base alla data, quindi scegli Visualizza Codice dal menu contestuale. Nella finestra Microsoft Visual Basic for Applications che si apre, copia e incolla il seguente codice nel Modulo vuoto:
Codice VBA: Proteggi tutte le righe con date passate:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Updateby Extendoffice 20161025
Dim xRow As Long
xRow = 2
ThisWorkbook.ActiveSheet.Unprotect Password:="111111"
ThisWorkbook.ActiveSheet.Cells.Locked = False
Do Until IsEmpty(Cells(xRow, 5))
If Cells(xRow, 5) < Date Then
Rows(xRow).Locked = True
End If
xRow = xRow + 1
Loop
ThisWorkbook.ActiveSheet.Protect Password:="111111"
End Sub
Nota: Nel codice sopra, il numero 5 è il numero della colonna dove si trova la data, “111111” è la password per proteggere questo foglio. Puoi modificarli secondo necessità.
3. Quindi salva e chiudi questa finestra del codice.
(1.) Se fai clic sulle celle con date passate, apparirà una finestra di avviso per ricordarti che la cella non può essere modificata, vedi screenshot:
(2.) Se fai clic sulla cella delle righe per provare a cambiare i valori nella data di oggi o in una data futura, verrà modificata correttamente, vedi screenshot:
I migliori strumenti per la produttività in Office
Potenzia le tue competenze in Excel con Kutools per Excel e sperimenta un'efficienza mai vista prima. 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 in Office e rende il tuo lavoro molto più semplice
- Abilita la modifica e la lettura a schede 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 riduce centinaia di clic del mouse ogni giorno!