Wie kann man Zellen nach der Dateneingabe oder Eingabe in Excel sperren oder schützen?
Angenommen, Sie haben ein Arbeitsblatt und nur ein bestimmter Bereich leerer Zellen benötigt eine Dateneingabe. Nachdem Sie die Dateneingabe abgeschlossen haben, sollen die Zellen automatisch gesperrt werden, um weitere Änderungen zu verhindern. Wie können Sie dies erreichen? Dieser Artikel kann Ihnen helfen.
Zellen nach der Dateneingabe oder Eingabe mit VBA-Code sperren oder schützen
Zellen nach der Dateneingabe oder Eingabe mit VBA-Code sperren oder schützen
Nehmen wir zum Beispiel den bestimmten Bereich leerer Zellen A1:F8. Gehen Sie wie folgt vor, um diese Zellen nach der Dateneingabe in Excel zu sperren.
1. Entsperren Sie diesen Bereich zunächst, indem Sie die Zellen auswählen, mit der rechten Maustaste klicken, dann Zellen formatieren im Kontextmenü auswählen und im Dialogfeld Zellen formatieren das Kontrollkästchen Gesperrt unter dem Schutz-Reiter deaktivieren und abschließend auf die Schaltfläche OK klicken. Siehe Screenshot:
2. Klicken Sie auf Überprüfen > Blatt schützen. Geben Sie ein Passwort an, um dieses Arbeitsblatt zu schützen.
3. Klicken Sie mit der rechten Maustaste auf die Registerkarte des Blatts und wählen Sie Code anzeigen aus dem Kontextmenü. Kopieren Sie dann den folgenden VBA-Code und fügen Sie ihn in das Codefenster ein. Siehe Screenshot:
VBA-Code: Zellen nach der Dateneingabe oder Eingabe sperren oder schützen
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
Hinweis: Im Code ist „A1:F8“ der Bereich, in den Sie Daten eingeben müssen; und „123“ ist das Passwort für das geschützte Arbeitsblatt. Ändern Sie sie nach Bedarf.
4. Drücken Sie gleichzeitig die Tasten Alt + Q, um das Fenster Microsoft Visual Basic for Applications zu schließen.
Nachdem Sie die Dateneingabe in die Zellen des Bereichs A1:F8 abgeschlossen haben, werden diese automatisch gesperrt. Wenn Sie versuchen, den Inhalt einer dieser Zellen zu ändern, erhalten Sie ein Hinweisdialogfeld. Siehe Screenshot:
Verwandte Artikel:
- Wie kann man alle Zellbezüge in Formeln auf einmal in Excel sperren?
- Wie kann man Zellen basierend auf Werten in einer anderen Zelle in Excel sperren oder entsperren?
- Wie kann man ein Bild in einer Zelle in Excel sperren oder fixieren?
Beste Büroproduktivitätswerkzeuge
Verbessern Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und erleben Sie Effizienz wie nie zuvor. Kutools für Excel bietet über300 erweiterte Funktionen zur Steigerung der Produktivität und Zeitersparnis. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...
Office Tab bringt eine Registerkartenoberfläche zu Office und macht Ihre Arbeit viel einfacher
- Aktivieren Sie die Bearbeitung und das Lesen mit Registerkarten in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters, anstatt in neuen Fenstern.
- Steigert Ihre Produktivität um50 % und reduziert täglich hunderte von Mausklicks für Sie!