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

Registerfarbe ändern

Forumthread: Registerfarbe ändern

Registerfarbe ändern
23.02.2016 13:42:17
Denys

Leider konnte ich auf meinen letzten Beitrag nicht mehr Antworten, daher hier nochmal vielen Dank an
"Otto"
mein Held!
Neuer Tag, neue Herausforderung:
Ich habe 31 Tabellenblätter. Die Namen sind 1,2,3,4,5,6... usw.
In jedem Blatt ist auch das jeweilige Datum hinterlegt (bei 1 also der 01.akuellermonat.aktuellesjahr). Und die Zahl daraus mit =tag() extrahiert.
Ich möchte nun, dass die Registerfarbe des heutigen Tabellenblattes grün wird und wenn es nicht der aktuelle Tag ist, keine Farbe hat.
Ich freue mich über jeden Tip.
Vielen Dank!
VG
Denys

Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
warum kannst Du dort nicht antworten? owT
23.02.2016 13:47:31
Helmut

Workbook_Open
23.02.2016 13:48:35
RPP63
Hi!
In DieseArbeitsmappe:
Private Sub Workbook_Open()
Dim Sh As Worksheet
For Each Sh In ThisWorkbook.Worksheets
Sh.Tab.ColorIndex = xlColorIndexNone
If Sh.Name = Day(Date) Then Sh.Tab.Color = 5287936
Next
End Sub
Gruß Ralf

AW: Registerfarbe ändern
23.02.2016 13:51:50
Rudi Maintaire
Hallo,
in DieseArbeitsmappe:
Private Sub Workbook_Open()
Dim wks As Worksheet
For Each wks In Worksheets
If IsNumeric(wks.Name) Then
If CInt(wks.Name) = Day(Date) Then
wks.Tab.Color = 255
Else
wks.Tab.Color = xlNone
End If
End If
Next
End Sub

Gruß
Rudi

Anzeige
AW: Registerfarbe ändern
23.02.2016 13:56:59
Denys
Hallo Rudi,
klappt perfekt. Vielen Dank!!!!!
Besten Gruß
Denys

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige

Infobox / Tutorial

Registerfarbe in Excel ändern


Schritt-für-Schritt-Anleitung

Um die Registerfarbe in Excel zu ändern, insbesondere um das aktuelle Tabellenblatt farblich hervorzuheben, kannst du folgenden VBA-Code verwenden. Dieser Code wird beim Öffnen der Arbeitsmappe ausgeführt:

  1. Öffne die Excel-Datei.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Wähle im Projektfenster „DieseArbeitsmappe“ aus.
  4. Füge den folgenden Code in das Codefenster ein:
Private Sub Workbook_Open()
    Dim Sh As Worksheet
    For Each Sh In ThisWorkbook.Worksheets
        Sh.Tab.ColorIndex = xlColorIndexNone
        If Sh.Name = Day(Date) Then Sh.Tab.Color = 5287936 ' Grün
    Next
End Sub
  1. Schließe den VBA-Editor und speichere die Datei als Makro-fähige Arbeitsmappe (.xlsm).
  2. Schließe und öffne die Arbeitsmappe erneut, um die Änderungen zu sehen.

Häufige Fehler und Lösungen

  • Excel Registerfarbe lässt sich nicht ändern: Stelle sicher, dass du die Datei als Makro-fähige Arbeitsmappe (.xlsm) speicherst. Wenn die Datei im .xlsx-Format gespeichert wird, funktioniert der VBA-Code nicht.

  • Falsche Farben werden angezeigt: Überprüfe, ob die Tabellenblattnamen tatsächlich die Zahl des aktuellen Tages enthalten. Der Code sucht nach dem Tagesdatum, daher müssen die Namen der Blätter numerisch sein.


Alternative Methoden

Wenn du keine VBA-Makros verwenden möchtest, könntest du die Registerfarbe manuell ändern:

  1. Klicke mit der rechten Maustaste auf das Registerblatt.
  2. Wähle „Tabfarbe“ aus.
  3. Wähle die gewünschte Farbe aus.

Beachte jedoch, dass diese Methode keine Automatisierung bietet und du die Farben manuell anpassen musst.


Praktische Beispiele

Angenommen, du hast folgende Tabellenblätter: 1, 2, 3, ... bis 31. Wenn heute der 15. ist, wird das Register für das Tabellenblatt „15“ grün. Alle anderen Register bleiben in der Standardfarbe.

Du kannst den VBA-Code anpassen, um unterschiedliche Farben für verschiedene Tage festzulegen, indem du die Farbwerte änderst.


Tipps für Profis

  • Experimentiere mit verschiedenen Farbwerten, um die gewünschte Farbkombination zu finden. Du kannst die RGB-Funktion verwenden, um spezifische Farben zu wählen, z.B. Sh.Tab.Color = RGB(0, 255, 0) für grün.

  • Du kannst den Code erweitern, um auch Wochenenden oder Feiertage farblich zu kennzeichnen, indem du zusätzliche Bedingungsprüfungen einfügst.


FAQ: Häufige Fragen

1. Wie ändere ich die Farbe für mehrere Tage gleichzeitig?
Du kannst den VBA-Code anpassen, indem du mehrere If-Bedingungen hinzufügst, um verschiedene Farben für verschiedene Tage festzulegen.

2. Was ist, wenn ich die Registerfarbe für alle Tabellenblätter ändern möchte?
Du kannst einfach die Zeile Sh.Tab.ColorIndex = xlColorIndexNone entfernen, um eine Standardfarbe für alle Registerblätter festzulegen, bevor du spezifische Farben für bestimmte Blätter zuweist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige