Das Archiv des Excel-Forums
ungesch. Zellen auf gesch. Blatt farbig ausfüllen
Betrifft: ungesch. Zellen auf gesch. Blatt farbig ausfüllen
von: Elmar Steigenberger
Geschrieben am: 22.09.2003 15:44:47
Hallo, Ihr lieben Helfer und Helferinne,
ich habe auf einem geschützten Blatt einige Zellen, auf denen User was eintragen können. In anderen Zellen sind Formeln drin, die nicht geändert werden können.
Gibt es eine Möglichkeit ohne VB, den Schutz so zu ändern, dass die User die Zelle anklicken und dann den Farbeimer mit der entsprechenden Farbe anklicken, und dass dann die ungeschützte Zelle farbig hinterlegt wird? Das also Farbformatierungen möglich sind trotz Blattschutz?
Mit VB wärs klar:
Button
Schutz aufheben
Farbe zuweisen
Blatt wieder schützen
Vielen Dank fürs Lesen und Antworten!
liebe e-Grüße
Elmar
====================================
Die erstaunliche und absolut umwerfende Wahrheit über den 11.09.01
www.elfterseptember.info
Betrifft: AW: ungesch. Zellen auf gesch. Blatt farbig ausfüllen
von: Kirsten
Geschrieben am: 22.09.2003 16:01:57
Hallo!
Einfach die Zellen, die im geschützen Arbeitsblatt ungeschützt bleiben sollen vorher formatieren: rechte Maus, Zellen Formatieren, Lasche "Schutz" auswählen und dort den Haken bei "gesperrt" entfernen!
Alle Zellen, bei denen das nicht gemacht wurde, sind geschützt...in diese kann etwas eingegeben werden...
Gruß, Kirsten
Betrifft: AW: ungesch. Zellen auf gesch. Blatt farbig ausfüllen
von: Elmar Steigenberger
Geschrieben am: 22.09.2003 16:07:21
Hallo Kirsten,
Danke für die schnelle Antwort. Das ist mir aber schon klar...
Ich will ja auch nichts eingeben, sondern Farben verwenden. Und im Button Farbeausfüllen sind alle Farben grau hinterlegt...
liebe e-Grüße
Elmar
====================================
Die erstaunliche und absolut umwerfende Wahrheit über den 11.09.01
www.elfterseptember.info
Betrifft: Dann kannst du aber immer noch keine Farbe ändern.
von: Boris
Geschrieben am: 22.09.2003 16:10:05
Hi Kirsten,
das geht nur mit VBA (mit riesigem Umweg auch ohne - aber es ist in der Regel nicht praktikabel und letztendlich auch nicht wasserdicht).
@Elmar:
Ein kleines Ereignismakro erledigt das auch ohne Buttonklick:
Option Explicit
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Dim T As Range, Ash As Worksheet
Set T = Target
Set Ash = ActiveSheet
If T.Cells.Count > 1 Then Exit Sub
If T.Locked And Ash.ProtectContents Then
Exit Sub
ElseIf T.Locked And Ash.ProtectContents = False Then
Ash.Protect "Kennwort"
Exit Sub
End If
ActiveSheet.Unprotect "Kennwort"
End Sub
Es gehört in das Modul der entsprechenden Tabelle (nicht in ein allgemeines Modul).
Funktioniert aber nur, wenn die Zellen EINZELN gefärbt werden sollen (nicht gruppenweise).
Geprüft wird auf die Eigenschaft, ob unter Schutz der Haken entfernt wurde oder nicht.
Grüße Boris
Betrifft: AW: Ereignismakro
von: Elmar Steigenberger
Geschrieben am: 22.09.2003 17:14:50
Hallo Boris,
danke für das tolle Makro.
Bevor ichs einbaue, möchte ich es verstehen:
If T.Cells.Count > 1 Then Exit Sub
ist klar, wenns mehr Zellen sind dann raus.
If T.Locked And Ash.ProtectContents Then Exit Sub
Mir Unklar - ich verstehe es so:
Wenn diese Zelle gesperrt ist und das Blatt gesperrt ist, dann auch raus
ElseIf T.Locked And Ash.ProtectContents = False Then: Ash.Protect "Kennwort":Exit Sub
Mir Unklar - ich verstehe es so:
Wenn diese Zelle gesperrt ist und das Blatt nicht gesperrt ist, dann Blatt Sperren und aus dem Makro raus.
Was ich aber bräuchte, wäre:
Wenn die Zelle nicht gesperrt ist und das Blatt gesperrt ist, dann mit Farbe füllen ansonsten Blatt sperren.
Ich habe es jetzt so gemacht - inzwischen ist es keine Farbe mehr, sondern ein Muster:
ActiveSheet.Unprotect
With Selection.Interior
.Pattern = xlSolid
End With
ActiveSheet.Protect UserInterfaceOnly:=True
So gehts doch auch, oder?
Vielen Dank fürs Lesen und Antworten!
liebe e-Grüße
Elmar
Betrifft: Die letzte Zeile hast du überlesen...
von: Boris
Geschrieben am: 22.09.2003 20:13:20
Hi Elmar,
bis dahin hast du alles genau richtig erkannt. Und jetzt fehlt noch die letzte Bedingung:
Zelle ist nicht gesperrt, aber Blattschutz ist aktiv, dann werden alle vorhergehenden Abfragen mit FALSCH "beantwortet" und das Makro läuft automatisch in diese letzte Zeile:
ActiveSheet.Unprotect "Kennwort"
Und du hast dann genau das, was du willst.
Hast du es denn mal getestet?
Grüße Boris
Betrifft: AW: Die letzte Zeile hast du überlesen...
von: Elmar Steigenberger
Geschrieben am: 22.09.2003 21:43:54
Schande über mich....
Werd michmal morgen abend drum kümmern, heute kann ich nicht mehr, ich bin bis heute nacht um 03:30 dran gesessen, jetzt mag ich einfach nicht mehr
liebe e-Grüße
Elmar
Excel-Beispiele zum Thema " ungesch. Zellen auf gesch. Blatt farbig ausfüllen"