Wie schütze ich Zellen basierend auf dem Datum in Excel?
Normalerweise können wir das Arbeitsblatt schützen, um zu verhindern, dass andere die Zellenwerte bearbeiten oder ändern. Manchmal müssen Sie die Zellen jedoch basierend auf dem Datum schützen. Ich möchte beispielsweise andere Zellen schützen, aber nur zulassen, dass die Zellenwerte des heutigen Datums wie im folgenden Screenshot geändert werden. In diesem Artikel wird erläutert, wie Zellen basierend auf dem Datum geschützt werden.
Schützen Sie alle Zeilen außer der heutigen Datumszeile mit VBA-Code
Schützen Sie alle Zeilen, deren Datum übergeben wurde, mit VBA-Code
Schützen Sie alle Zeilen außer der heutigen Datumszeile mit VBA-Code
Lassen Sie nur zu, dass die Zeile geändert wird, die dem heutigen Datum entspricht. Der folgende Code kann Ihnen dabei helfen. Gehen Sie dazu folgendermaßen vor:
1. Klicken Sie mit der rechten Maustaste auf die Registerkarte "Blatt", auf der Sie die Zellen basierend auf dem Datum schützen möchten, und wählen Sie dann aus Code anzeigen aus dem Kontextmenü in der herausgesprungenen Microsoft Visual Basic für Applikationen Bitte kopieren Sie den folgenden Code und fügen Sie ihn in das leere Modul ein:
VBA-Code: Schützen Sie alle Zeilen mit Ausnahme der heutigen Datumszeile:
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
Note: Im obigen Code der Buchstabe E ist die Spaltenüberschrift, in der sich das Datum befindet. “111111”Ist das Passwort zum Schutz dieses Blattes. Sie können sie nach Ihren Wünschen ändern.
2. Speichern und schließen Sie dann dieses Codefenster.
(1.) Wenn Sie über die heutige Datumszeile hinaus auf andere Zellen klicken, wird ein Eingabeaufforderungsfeld angezeigt, das Sie daran erinnert, dass die Zelle nicht bearbeitet werden kann (siehe Abbildung):
(2.) Wenn Sie auf die Zeile klicken und sie bearbeiten, die dem heutigen Datum entspricht, wird sie erfolgreich geändert (siehe Abbildung):
Schützen Sie alle Zeilen, deren Datum übergeben wurde, mit VBA-Code
Wenn Sie alle Zeilen schützen müssen, deren Datum verstrichen ist, lassen Sie nur die Änderung der heutigen und zukünftigen Datumszeilen zu. Wenden Sie den folgenden VBA-Code an:
1. Klicken Sie mit der rechten Maustaste auf die Registerkarte "Blatt", auf der Sie die Zellen basierend auf dem Datum schützen möchten, und wählen Sie dann aus Code anzeigen aus dem Kontextmenü in der herausgesprungenen Microsoft Visual Basic für Applikationen Bitte kopieren Sie den folgenden Code und fügen Sie ihn in das leere Modul ein:
VBA-Code: Alle Zeilen schützen Datum ist verstrichen:
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
Note: Im obigen Code die Nummer 5 ist die Spaltennummer, in der sich das Datum befindet. “111111”Ist das Passwort zum Schutz dieses Blattes. Sie können sie nach Ihren Wünschen ändern.
3. Speichern und schließen Sie dann dieses Codefenster.
(1.) Wenn Sie auf das Datum klicken, an dem die Zelle verstrichen ist, wird ein Eingabeaufforderungsfeld angezeigt, das Sie daran erinnert, dass die Zelle nicht bearbeitet werden kann. Siehe Screenshot:
(2.) Wenn Sie auf die Zeilenzelle klicken, um zu versuchen, die Werte im heutigen oder zukünftigen Datum zu ändern, wird sie erfolgreich geändert (siehe Abbildung):
Beste Office-Produktivitätstools
Verbessern Sie Ihre Excel-Kenntnisse mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über 300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen ...
Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich
- Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
- Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!