Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren

Forumthread: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren

Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
14.03.2026 18:37:39
Peter
Hallo,

ich habe eine Exceltabelle in der in Spalte "I" entweder eine 1 oder eine 0 steht. Jetzt möchte ich es mit einem möglichst "schmalen" Code automatisieren, dass die Zellen von Zeile 5 bis Zeile 35 und zwar nur in den Spalten C,D,F und H bei dem Wert 1 auf "Locked = True" und beim Wert 0 auf "Locked = False" gesetzt werden.

Besten Dank schon mal im Voraus.
Peter
Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
14.03.2026 18:50:04
RPP63
Moin!
Mir fehlt da der Hinweis "in der jeweiligen Zeile", ansonsten macht das ja wenig Sinn.
Falls ja, dann wäre es (ohne VBA!) eine benutzerdefinierte Datengültigkeit.
=$I5=1

Gruß Ralf
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
18.03.2026 11:41:23
GerdL
Hallo Peter,

als Gesprächsgrundlage.
Sub Unit()


Dim C As Range

ActiveSheet.Unprotect

For Each C In Intersect(Range("C:D,F:F,H:H"), Rows(5).Resize(31)).Cells
C.Locked = Range("I" & C.Row) = 1
Next

ActiveSheet.Protect


End Sub

Gruß Gerd
Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
19.03.2026 11:02:26
GerdL
Moin Peter!
'Allgemeines Modul z.B. Modul1

Sub Unit2()

Dim C As Range
Dim Monatsliste As Variant
Dim Blattname As Variant

Monatsliste = Array("Januar", "Februar", "März", _
"April", "Mai", "Juni", _
"Juli", "August", "September", _
"Oktober", "November", "Dezember")

For Each Blattname In Monatsliste

With Worksheets(Blattname)
.Unprotect

For Each C In Intersect(.Range("C:D,F:F,H:H"), .Rows(5).Resize(31)).Cells
C.Locked = .Range("I" & C.Row) = 1
Next

.Protect
End With

Next

End Sub


'Modul der Tabelle "Deckblatt"
Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Address(0, 0, xlA1) = "D3" Then
If Target > 2025 And Target 2040 Then
Call Unit2
End If
End If

End Sub

Gruß Gerd
Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
20.03.2026 09:25:43
Peter
Moin Gerd!
Hab das jetzt alles jetzt alles so in die Tabelle integriert und noch meinen Passwortschutz für die gesperrten Tabellenblätter eingebaut und es funktioniert astrein!
Ganz herzlichen Dank für diese tolle Unterstützung. Dir noch einen erfolgreichen Tag und ein entspanntes Wochenende.

Gruß Peter
Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
18.03.2026 18:19:39
Peter
Hallo Gerd,

ich verstehe es zwar (noch) nicht zu 100% aber es funktioniert genau so, wie ich es mir vorgestellt habe.
Ganz super und herzlichen Dank dafür.

Eine Frage noch - wie müsste das Makro angepasst werden, damit es im jeweiligen Tabellenblatt (12 an der Zahl) eingebunden und damit automatisch ausgeführt werden kann, wenn sich das Jahr und damit die Werte in Zeile "I" entsprechend ändern? Hab das mal mit Sub Worksheet_change probiert aber da kommt eine Fehlermeldung:
"Deklaration der Prozedur entspricht nicht der Beschreibung eines Ereignisses oder einer Prozedur mit demselben Namen"

Aber wie gesagt, mit der jetzigen Lösung bin ich schon super zufrieden. Erspart mir einiges an Zeit.

Gruß Peter
Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
18.03.2026 20:08:48
GerdL
Ja, wie ändert sich "das Jahr"?
Durch Eingabe in welcher Zelle?
Bzw. durch eine Formel in welcher Zelle?

Gruß Gerd
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
19.03.2026 08:17:32
Peter
Hallo Gerd,

in der Tabelle gibt es ein Deckblatt. Da trägt der User seinen Namen und das entsprechende Jahr ein - 2026. Das ist Zelle "D3". Diese Zelle ist mit den anderen 12 Tabellenblättern (Januar bis Dezember) verknüpft. Ist immer Zelle "B2". In Zelle "A5" des jeweiligen Tabellenblattes wird aus Kalenderjahr und Monatszahl über diese Formel
=DATUM($B$1;$B$2;ZEILE()-4)
dann das jeweilige Datum generiert. In der Spalte "B" steht dann der dazugehörige Wochentag und in Spalte "I" halt dann die Sache mit "1" und "0" wegen Wochenende (1) oder Wochentag (0). Über eine bedingte Formatierung wird die Tabelle dann entsprechend farblich gestaltet und die Sache mit dem Sperren und entsperren hängt damit zusammen.

Reicht Dir das als Antwort?

Gruß Peter
Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
15.03.2026 08:10:23
Peter
Moin Ralf,

Das Tabellenblatt ist insgesamt gesperrt aber in Abhängigkeit von dem Wert in Spalte "I" soll der Benutzer in den Zellen der jeweiligen Zeile Daten eintragen können und der Wert in Spalte "I" ist abhängig vom Datum und ändert sich daher dynamisch.

I5=1 Zellen C5, D5, F5 und H5 = gesperrt
I5=0 Zellen C5, D5, F5 und H5 = nicht gesperrt
I6=1 Zellen C6, D6, F6 und H6 = gesperrt
I6=0 Zellen C6, D6, F6 und H6 = nicht gesperrt
...
...
I35=1 Zellen C35, D35, F35 und H35 = gesperrt
I35=0 Zellen C35, D35, F35 und H35 = nicht gesperrt

Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
16.03.2026 12:18:05
{Boris}
Hi,

wie kommen 1 und 0 in Spalte I? Per Formel oder durch manuellen Eintrag?
Ohne VBA hat Dir Ralf ne Lösung gegeben, die aber natürlich nicht ganz wasserdicht ist - es ist eher eine Eingabehilfe mit mit der Voraussetzung, dass der Anwender das auch so sieht und nix "rumtrickst".
Mit VBA brauchts erst mal eine Antwort auf meine Eingangsfrage.

VG, Boris
Anzeige
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
16.03.2026 16:46:05
Peter
Hallo Boris,

1 und 0 kommen per Formel in die Spalte "I" - in Abhängigkeit vom jeweiligen Wochentag bzw. Datum.
Reicht das als Antwort?

Gruß Peter
AW: Zellen in Abhängigkeit eines Wertes in anderer Zelle sperren
18.03.2026 10:05:42
{Boris}
Hi,

und Wochentag / Datum stammen aus manuellen Eingaben oder auch aus ner Formel wie z.B. =HEUTE() ?

VG, Boris

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige