Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zellen je nach Hintergrundfarbe sperren

Zellen je nach Hintergrundfarbe sperren
Matthias
Hallo Wissende,
ich habe folgendes Problem, ist es möglich in einer Arbeitsmappe alle z.B. nicht gelb markierten Zellen
zu sperren und wieder zu entsperren?
Danke im Voraus für eine Antwort.
Matthias
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Zellen je nach Hintergrundfarbe sperren
30.11.2010 10:56:57
Klaus
Hi Matthias,
Annahme:
1) mit "gelb markiert" meinst du "die Hintergrundfarbe auf ColorIndex 6 gesetzt"
2) es wurde händisch gelb markiert, nicht per bedingter Formatierung.
Dann sollte das laufen:
Sub Makro1()
Dim myR As Range
With ActiveSheet
.Unprotect
.Cells.Locked = True
For Each myR In .UsedRange
If myR.Interior.ColorIndex = 6 Then
myR.Locked = False
End If
Next myR
.Protect
End With
End Sub
zum sperren / entsperren entsprechend .locked = False gegen .locked = True ersetzen.
Grüße,
Klaus M.vdT.
Anzeige
AW: Zellen je nach Hintergrundfarbe sperren
30.11.2010 11:26:23
Matthias
Hallo Klaus M. vdT.,
erst mal eine andere Frage, heißt vdT. von der Tann?
dann weiter, vielen dank für den Code, gib mir aber noch mal einen
kurzen Tipp, wie ich die Funktion erweitern kann, so dass alle Tabellenblätter
gesperrt/entsperrt werden.
Danke im Voraus
Matthias
Anzeige
Für alle Worksheets
30.11.2010 13:13:30
Holger
Hallo,
einfach nur eine Schleife drüber setzen, die über alle Worksheets geht
Sub AlleWorksheets
Dim wks as worksheet
For each wks in Activeworkbook.worksheets
With wks
usw usw
end with
End Sub

next wks
AW: Für alle Worksheets
30.11.2010 13:26:21
Matthias
Hallo Holger,
wahrscheinlich hab ich es nicht richtig gemacht,
da es nicht funktioniert.
Sub Makro1()
Dim wks As Worksheet, myR As Range
For Each wks In ActiveWorkbook.Worksheets
With ActiveSheet
.Unprotect
.Cells.Locked = True
For Each myR In .UsedRange
If myR.Interior.ColorIndex = 6 Then
myR.Locked = False
End If
Next myR
.Protect
End With
Next wks
End Sub

kannst du mal bitte schauen. Danke
Schöne Grüsse
Matthias
Anzeige
AW: Für alle Worksheets
30.11.2010 13:33:25
Klaus
Hi Matthias,
das T. steht nicht für Tann.
Dein Code ist schon fast richtig! Ersetze die Zeile
With ActiveSheet
mit
With wks
denn du willst den Code ja nicht x-Mal im aktiven Sheet ausführen, sondern einmal in jedem.
Grüße,
Klaus M.vdTwer
AW: Für alle Worksheets
30.11.2010 15:57:34
Matthias
Hallo Holger,
vielen Dank für deine Hilfe, jetzt funktioniert
es prima.
Schöne Grüsse
Matthias
Anzeige
AW: Für alle Worksheets
30.11.2010 15:58:35
Matthias
Hallo Klaus,
auch dir vielen Dank.
Schöne Grüsse Matthias
Danke für die Rückmeldung! o.w.T.
01.12.2010 09:01:53
Klaus
.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige