Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
712to716
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
712to716
712to716
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Zellen in Abhängigkeit von Zellfarben schützen?

Zellen in Abhängigkeit von Zellfarben schützen?
01.01.2006 13:08:54
Zellfarben
Hallo,
zuallererst mal wünsche ich ein frohes Neues Jahr. :)
Ich habe eine Frage:
In einer recht großen Datei arbeite ich mit unterschiedlichen Farben in den Zellen, da nur wenige davon auswählbar sein sollen. Die Zellen, die mit Inhalt gefüllt und ausgewählt werden können, die lasse ich weiss .... den Rest, der schreibgeschützt und nicht auswählbar sein soll, hinterlege ich grau. Jetzt ist es mir aber recht mühsam, jedesmal hunderte von grauen Zellen auszuwählen und diese manuell schreib- und auswahlzuschützen.
Gibt es da eine Möglichkeit, dies über einen Code zu erledigen. Ich stelle mir das so vor, dass ich einen Bereich (z.B. A1:Z500) markiere und dann (nach Druck auf einen Befehlsbutton) all die Zellen auswahl- und schreibgeschützt werden, die in einer bestimmten Farbe hinterlegt sind (grau = auswahl- und schreibgeschützt, gelb = nur schreibgeschützt).
Wäre echt toll, wenn mir da jemand auf die Sprünge helfen könnte.
Verbindlichsten Dank und noch einen schönen Sonntag.
Gruß

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellen in Abhängigkeit von Zellfarben schützen?
01.01.2006 17:05:40
Zellfarben
Hi,
ich bin auch nur VBA-Anfänger, aber da Dir bis jetzt keiner geantwortet hat...:
Mit dem folgenden Makro kannst Du die hellgrau markierten Zellen in der Auswahl schreibschützen.
Wenn Du mir verrätst wie Du eine Zelle auswahlschützt kann ich das vieleicht noch einbauen. Ich kann leider nicht 'rausfinden wie das geht.

Sub FarbenSchützen()
Dim Zelle As Range
ActiveSheet.Protect DrawingObjects:=False, _
Contents:=False, Scenarios:=False
For Each Zelle In Selection
If Zelle.Interior.ColorIndex = 15 Then Zelle.Locked = True
'15=hellgrau/ 16=dunkelgrau/ 6 =gelb/ 19 = hellgelb
Next
ActiveSheet.Protect DrawingObjects:=True, _
Contents:=True, Scenarios:=True
End Sub

Ich hoffe ich konnte Dir wenigstens ein bißchen helfen.
Gruß
Uwe
(:o)
Anzeige
AW: Zellen in Abhängigkeit von Zellfarben schützen
01.01.2006 17:45:27
Zellfarben
Hi Proxima,
hab mal Uwes Idee aufgegriffen
Sub FarbenSchützen()
Dim Zelle As Range
ActiveSheet.Unprotect
For Each Zelle In Selection
Zelle.Locked = IIf(Zelle.Interior.ColorIndex = 15, True, False)
Zelle.FormulaHidden = IIf(Zelle.Interior.ColorIndex = 15, True, False)
Zelle.Locked = IIf(Zelle.Interior.ColorIndex = 6, True, False)
'15=hellgrau/ 16=dunkelgrau/ 6 =gelb/ 19 = hellgelb
Next
ActiveSheet.Protect
End Sub

Gruß
Reinhard
ps:Das Forum lebt auch von Rückmeldungen.
AW: Zellen in Abhängigkeit von Zellfarben schützen
01.01.2006 19:00:07
Zellfarben
Hi Reinhard,
auf das FormulaHidden war ich auch gekommen, aber ich verstehe das nicht als Auswahlschutz?! Bin gespannt ob das so gemeint war.
Mit den Anhängen zu Protect und Unprotect hab ich's mal wieder (wie so oft) komplizierter gemacht als nötig.
Den Trick mit IIF werde ich mir auf jedenfall auch merken.
Ich muss feststellen das ich durch das Forum von Tag zu Tag schlauer werde (;-)))
Gruß
Uwe
(:o)
Anzeige
OT
01.01.2006 19:12:58
Reinhard
Hallo Uwe,
naja, schlauer werde ich nicht, eher werden paar leere Zellen mit Halbwissen gefüllt :-)
Und Iif lernte ich erst dieses ups*g letztes Jahr überhaupt kennen und schätzen.
Ja, wenn es nicht Formulahiden ist weiß ich auch nicht was gemeint ist.
Gruß
Reinhard
AW: Zellen in Abhängigkeit von Zellfarben schützen
01.01.2006 19:21:18
Zellfarben
Herzlichen Dank erstmal für die Ideengebung.
Mit Auswahlschutz meinte ich die Möglichkeit im Dialogfeld "Blatt schützen" (Extras - Schutz) neben dem eigentlichen Schreibschutz ("Arbeitsblatt und Inhalt gesperrter Zellen schützen") noch die Festlegung unter "Alle Benutzer dieses Arbeitsblattes dürfen":
In den Auswahlmöglichkeiten alles auf "ohne Haken (uncheck)", nur einen Haken bei "Nicht gesperrte Zellen auswählen" .... damit verhindere ich, dass geschützte Zellen ausgewählt werden können, was das Navigieren durch das Blatt erheblich vereinfacht.
Wenn das noch einbaubar wäre!
Allerbesten Dank! :)
Anzeige
AW: Zellen in Abhängigkeit von Zellfarben schützen
01.01.2006 19:27:49
Zellfarben
Hi Proxi,
mein xl2000 kennt das wohl nicht, deshalb Frage auf noch offen gesetzt (rechts oberhalb des Eingabefeldes).
Gruß
Reinhard
AW: Zellen in Abhängigkeit von Zellfarben schützen
01.01.2006 19:36:49
Zellfarben
Frage ist noch offen!
Gruß
Frage noch offen mT für Rroxi
01.01.2006 19:51:41
Reinhard
Hi Proxi,
ich hatte die Frage auf noch offen gesetzt, du hast das Häkchen vergessen.
Jetzt siehst du das Symbol im Betrff was anzeigt dass diese Frage noch offen ist, lasse es so, also nicht antworten :-)
Gruß
Reinhard
ps:Das Forum lebt auch von Rückmeldungen, aber nicht wenn ich die Frage auf noch offen stelle *g
AW: Frage noch offen mT für Rroxi
01.01.2006 22:04:04
et999
Hi,
hab' leider auch nur EXCEL 2000 und da gibt's das nicht (:-(
AW: Zellen in Abhängigkeit von Zellfarben schützen
01.01.2006 22:14:24
Zellfarben
Hi Proxi,
Extras--Makro--Aufzeichnen, dann zeichne das mal auf und poste es hier.
Gruß
Reinhard
ps:Das Forum lebt auch von Rückmeldungen.
Anzeige
AW: Zellen in Abhängigkeit von Zellfarben schützen?
01.01.2006 23:05:29
Zellfarben
Ich habe nochmal ein bisschen probiert und bin auf folgendes gestossen. Das Unterdrücken der Auswahl einer geschützten Zelle ist über "UserInterfaceOnly" zu bewerkstelligen. Das habe ich im nachstehenden (leicht editierten) Code auch so gemacht .... der Blattschutz über diesen Code funktioniert auch. Was aber nicht funktioniert ist die Selektion der Zellen. Die Selektion wird ignoriert und stattdessen alle grauen Zellen (auch die nichtselektierten grauen) entsprechend der Argumente geschützt; das ist zwar auch das richtige Ergebnis, aber der falsche Ansatz. Ich möchte gerne festlegen, welche Bereich (mit grauen Zellen) vom Blattschutz betroffen sind .... aktuell ist eine Selektion überflüssig, da im aktiven Blatt ALLE Zellen nach "grau" durchsucht und dann geschützt werden.
Wie kann man diesem Problem begegnen? Allerbesten Dank

Private Sub cmdProtectSheet_Click()
Dim Zelle As Range
For Each Zelle In Selection
Zelle.Locked = IIf(Zelle.Interior.ColorIndex = 15, True, False)
Zelle.Locked = IIf(Zelle.Interior.ColorIndex = 6, True, False)
'15=hellgrau/ 16=dunkelgrau/ 6 =gelb/ 19 = hellgelb
Next
ActiveSheet.Protect Password:="1234", DrawingObjects:=True, Contents:=True, UserInterfaceOnly:=True, Scenarios:=True
End Sub

Anzeige
AW: Zellen in Abhängigkeit von Zellfarben schützen?
01.01.2006 23:20:31
Zellfarben
.... noch etwas ..... beim Blattschutz (mit selektierten/unselektierten grauen Zellen) werden jedoch die grauen Zellen nicht mit geschützt, die als Zelleigenschaft auf "nicht gesperrt" gesetzt sind (ohne Haken im entsprechenden Menü Format - Zelle).
Das aber nur als Information, da ich nicht glaube, dass dort die Lösung für das Selektionsproblem zu finden ist ......
Danke! :)
AW: Zellen in Abhängigkeit von Zellfarben schützen
02.01.2006 15:14:54
Zellfarben
Mit dem nachfolgenden Code funktioniert der punktuelle Blattschutz (Bereich selektieren, die Zellen mit der entsprechenden Farbe werden gesperrt). Vielen Dank für die Unterstützung.
Hier der Code:
===============================

Private Sub cmdProtectSheet_Click()
Dim zelle As Range
For Each zelle In Selection
If zelle.Interior.ColorIndex = 15 Then zelle.Locked = True
'15=hellgrau/ 16=dunkelgrau/ 6 =gelb/ 19 = hellgelb
'Zelle.Locked = IIf(Zelle.Interior.ColorIndex = 15, True, False)
'Zelle.Locked = IIf(Zelle.Interior.ColorIndex = 6, True, False)
'15=hellgrau/ 16=dunkelgrau/ 6 =gelb/ 19 = hellgelb
Next zelle
ActiveSheet.Protect Password:="1234", DrawingObjects:=True, Contents:=True, UserInterfaceOnly:=True, Scenarios:=True
End Sub

===============================
Diesen Code habe ich auf einen Befehls-Button gelegt. Damit das auch über diesen Button funktioniert, habe ich in den Zelleigenschaften (Format-Zelle-Schutz) den Haken bei "gesperrt" für die gesamte Tabelle herausgenommen. .... und da taucht jetzt noch ein Problem auf. Nämlich das, dass nach Aufhebung des Schreibschutzes (ab und an muss ich doch an die grauen Zellen ran), gesetzt durch den Click auf den Befehlsbutton, die Zelle immer noch den Haken bei "gesperrt" hat .... damit funktioniert dann nicht mehr das Sperren per Selektion.
Wie müsste da der Eintrag im Code sein, damit er mir für die gesamte Tabelle den Haken bei "gesperrt" wieder rausnimmt (die auswahl der gesamten Tabelle macht da am meisten Sinn für mich). Das Entsperren würde ich gerne auf einen separaten Button legen.
Besten Dank für eine Antwort.
Anzeige
AW: Zellen in Abhängigkeit von Zellfarben schützen
02.01.2006 19:28:10
Zellfarben
Mein Problem ist jetzt gelöst. Der Code für die letzte Frage (Entsperren eines Bereichs) sieht wie folgt aus.

Private Sub cmdUnlockSheet_Click()
ActiveSheet.Unprotect Password:="1234"
Range("A1:AY497").Select
Range("AY497").Activate
Selection.Locked = False
Selection.FormulaHidden = False
Range("B65536").End(xlUp).Offset(2, 0).Select
End Sub

Vielen Dank nochmal an alle, die mir so gut geholfen haben. :)

317 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige