Ich betrachte den Bereich A1:D50.
Wird beispielsweise in B1 ein "x" eingetragen, darf in A1, C1 und D1 kein Eintrag mehr möglich sein.
Das gleiche gilt für Zeilen 2 bis 50.
Wisst ihr wie man das umsetzen kann?
Danke!
A | B | C | D | |
1 | 1 | |||
2 | 2 | |||
3 | ||||
4 | ||||
5 |
Daten, Gültigkeit | |||||||||||||
Zelle | Zulassen | Daten | Wert1 | Wert2 | Leere Zellen ignorieren | Zellendropdown | Titel Eingabe-meldung | Eingabe-meldung | Titel Fehler | Fehler-meldung | Typ Fehler-meldung | Fehler- meldung anzeigen | Eingabe- meldung anzeigen |
A1: D5 | Benutzerdefiniert | Zwischen | =ANZAHL2($A$1:$D$1)=1 | Wahr | Stopp | Wahr | Wahr |
Excel-Inn.de |
Hajo-Excel.de |
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007 |
Add-In-Version 25.10 einschl. 64 Bit |
A | B | C | D | |
1 | 1 | |||
2 | 2 | |||
3 | ||||
4 | 3 | |||
5 |
Daten, Gültigkeit | |||||||||||||
Zelle | Zulassen | Daten | Wert1 | Wert2 | Leere Zellen ignorieren | Zellendropdown | Titel Eingabe-meldung | Eingabe-meldung | Titel Fehler | Fehler-meldung | Typ Fehler-meldung | Fehler- meldung anzeigen | Eingabe- meldung anzeigen |
A1: D1 | Benutzerdefiniert | Zwischen | =ANZAHL2($A1:$D1)=1 | Wahr | Stopp | Wahr | Wahr | ||||||
A2: D2 | Benutzerdefiniert | Zwischen | =ANZAHL2($A2:$D2)=1 | Wahr | Stopp | Wahr | Wahr | ||||||
A3: D3 | Benutzerdefiniert | Zwischen | =ANZAHL2($A3:$D3)=1 | Wahr | Stopp | Wahr | Wahr | ||||||
A4: D4 | Benutzerdefiniert | Zwischen | =ANZAHL2($A4:$D4)=1 | Wahr | Stopp | Wahr | Wahr | ||||||
A5: D5 | Benutzerdefiniert | Zwischen | =ANZAHL2($A5:$D5)=1 | Wahr | Stopp | Wahr | Wahr |
Excel-Inn.de |
Hajo-Excel.de |
XHTML-Tabelle zur Darstellung in Foren, einschl. der neuen Funktionen ab Version 2007 |
Add-In-Version 25.10 einschl. 64 Bit |
Um Zellen in Excel zu sperren, wenn eine andere Zelle beschrieben ist, kannst du die Funktion der Datenüberprüfung nutzen. Hier ist eine einfache Anleitung:
Daten
> Datenüberprüfung
.=ANZAHL2($A1:$D1)=1
.Jetzt wird die Eingabe in den Zellen A1, C1 und D1 verhindert, wenn in B1 ein Eintrag gemacht wird.
Wenn du die Zellen ohne VBA sperren möchtest, kannst du auch die folgende Methode verwenden:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Me.Range("B1:B50")) Is Nothing Then
If Target.Value <> "" Then
Target.Offset(0, -1).Locked = True
Target.Offset(0, 1).Locked = True
Target.Offset(0, 2).Locked = True
End If
End If
End Sub
Beispiel 1: Wenn in B1 ein "x" eingetragen ist, sollten die Zellen A1, C1 und D1 gesperrt werden. Nutze die oben beschriebene Datenüberprüfung mit der Formel =ANZAHL2($A1:$D1)=1
.
Beispiel 2: Verwendung von VBA zur automatischen Anpassung der Gültigkeit in den Zellen A1:D50:
For i = 1 To 50
aAddress = Cells(i, 1).Address & ":" & Cells(i, 4).Address
With Range(aAddress).Validation
.Delete
.Add Type:=xlValidateCustom, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:="=ANZAHL2(" & aAddress & ")=1"
End With
Next
1. Wie kann ich eine Zelle sperren, wenn eine andere Zelle beschrieben ist? Du kannst dies mit der Datenüberprüfung und einer benutzerdefinierten Formel erreichen, wie in der Schritt-für-Schritt-Anleitung beschrieben.
2. Brauche ich VBA, um Zellen zu sperren? Nein, du kannst Zellen auch ohne VBA sperren, indem du die Datenüberprüfung verwendest. VBA ist jedoch hilfreich für komplexere Anforderungen und Automatisierungen.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen