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

nicht gesp. Zellen färben - nur ein Blatt!

Forumthread: nicht gesp. Zellen färben - nur ein Blatt!

nicht gesp. Zellen färben - nur ein Blatt!
29.08.2003 15:03:32
Tanja
Hallo Profis,

folgendes Makro färbt mir alle nicht gesperrten Zellen aller Blätter meiner Arbeitsmappe gelb!


Sub offeneZellenFärben()
Dim RaZelle As Range
Dim InI As Integer
For InI = 1 To Sheets.Count
Worksheets(InI).Unprotect
For Each RaZelle In Worksheets(InI).UsedRange
If RaZelle.Locked = False Then RaZelle.Interior.ColorIndex = 19
' zurück
' If RaZelle.Locked = True Then RaZelle.Interior.ColorIndex = xlNone
Next RaZelle
Worksheets(InI).Protect
Next InI
End Sub


Wie krieg ich es hin, dass der Vorgang nur im aktiven Blatt abläuft?

Vielen Dank für die Hilfe im Voraus!

Gruß
Tanja
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: nicht gesp. Zellen färben - nur ein Blatt!
29.08.2003 15:06:16
sergiesam
Hi,

gib einfach die For-Schleife der Blätter weg:


Sub offeneZellenFärben()
Dim RaZelle As Range
ActiveSheet.Unprotect
For Each RaZelle In ActiveSheet.UsedRange
If RaZelle.Locked = False Then RaZelle.Interior.ColorIndex = 19
' zurück
' If RaZelle.Locked = True Then RaZelle.Interior.ColorIndex = xlNone
Next RaZelle
ActiveSheet.Protect
End Sub


Gruß aus Linz,
sam
Anzeige
Erweiteung + Zwischenfrage
29.08.2003 15:39:00
Luaks
Hallo
hab das ganze um eine bedingte formatierung erweitert, sodass die zellen, falls sie leer sind, andere Farbe haben.


Sub Nicht_gesperrte_Zellen_färben()
'färbt alle nicht geperrten Zellen blau, falls leer, türkis falls
'etwas drinnen steht
Dim RaZelle As Range
ActiveSheet.Unprotect
For Each RaZelle In ActiveSheet.UsedRange
If RaZelle.Locked = False Then
RaZelle.Interior.ColorIndex = 34
RaZelle.FormatConditions.Delete
RaZelle.FormatConditions.Add Type:=xlCellValue, Operator:=xlNotEqual, _
Formula1:="="""""
RaZelle.FormatConditions(1).Interior.ColorIndex = 35 'xlNone falls gefüllte Zellen weiß sein sollen
End If
' zurück
' If RaZelle.Locked = True Then RaZelle.Interior.ColorIndex = xlNone
Next RaZelle
ActiveSheet.Protect
End Sub

meine Frage:
braucht es die zeile
RaZelle.FormatConditions.Delete ?
einige recorder-befehle sind mir nämlich suspekt...
gruß,
Lukas
Anzeige
AW: Erweiteung + Zwischenfrage
30.08.2003 08:20:11
sergiesam
Hi,

wenn du die Bedingte Formatierung mit ADD hinzufügst, brauchst du schon DELETE. Es gibt 2 Möglichkeiten eine bedingte Formatierung festzulegen:
a) Es gibt noch keine >> Add
b) Es gibt bereits eine für die Zelle >> Ändern über Item.

Wenn man nicht genau weiß, ob bereits manuell vielleicht eine Formatierung festgelegt wurde, würde der Add-Befehl scheitern bzw. was falsches liefern. So geht man einfach einen sicheren Weg: Lösche alle ev. vorkommenden bedingten Formatierungen und lege genau die an, die man wünscht.

Meine Empfehlung also: Ja, delete braucht man.
Gruß,
Sam
Anzeige
AW: nicht gesp. Zellen färben - nur ein Blatt!
29.08.2003 15:07:21
Hajo_Zi
Hallo Tanja

der Ursprungshinweis war nicht umsonst im Code,


Sub offeneZellenFärben()
Dim RaZelle As Range
Dim InI As Integer
'    For InI = 1 To Sheets.Count
ActiveSheet.Unprotect
For Each RaZelle In ActiveSheet.UsedRange
If RaZelle.Locked = False Then RaZelle.Interior.ColorIndex = 19
' zurück
' If RaZelle.Locked = True Then RaZelle.Interior.ColorIndex = xlNone
Next RaZelle
ActiveSheet.Protect
'    Next InI
End Sub


Gruß Hajo
Anzeige
AW: nicht gesp. Zellen färben - nur ein Blatt!
29.08.2003 15:07:48
Andi_H
hi tanja,


Sub offeneZellenFärben()
Dim RaZelle As Range
Dim InI As Integer
activesheet.Unprotect
For Each RaZelle In activesheet.UsedRange
If RaZelle.Locked = False Then RaZelle.Interior.ColorIndex = 19
' zurück
' If RaZelle.Locked = True Then RaZelle.Interior.ColorIndex = xlNone
Next RaZelle
activesheet.Protect
End Sub



gruß

andi
Anzeige
AW:Danke an alle für die schnelle Hilfe:o) oT
29.08.2003 15:22:34
Tanja
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

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