Wie kann ich bei Excel ein Register automatisch färben lassen?
Ich habe bei meiner Excel für jede KW ein Blatt. Jetzt möchte ich, dass sich das Blatt der aktuellen KW immer färbt. Egal in welcher Farbe. Kann mir dabei jmd. helfen? Übersteigt leider meine Excel Skills ;)

3 Antworten
Rechtsklick auf gewünschtes Register
--> Registerfarbe --> Farbe wählen.
Zur Frage, wie das geht:
Im VBA-Monitor eingeben:
Private Sub Workbook_Open()
Sheets(Month(Now)).Select
With ActiveWorkbook.Sheets(Month(Now)).Tab
.Color = 255 'rot
.TintAndShade = 0
End With
End Sub
und als Datei mit Makros (xlsm) speichern.
Gruß aus Berlin
Alt und F11 öffnet den VBA-Monitor
"Diese Arbeitsmappe" doppelt klicken
dann das Progrämmchen hier einfügen.
@ Oubyi: Danke, bin aber immer im Hintergrnd.
Gruß aus Berlin
ALT & F11
Damit kommst Du in den VBA-Editor
Im Projektfenster klickst Du doppelt auf
VBA-Projekt(NameDeinerArbeitsmapp)
sodass sich der Baum darunter öffnet (falls er nicht schon ausgeklappt ist)
Dann einen Doppelklick auf "Diese Arbeitsmappe"
Jetzt kopierst Du in das große leere Fenster rechts den obigen Code.
Setz den Curser in den Code und drücke F5 um das Makro auszuführen.
Dann wird das dritte Blatt (März = 3) in Deiner Arbeitsmappe rot gefärbt.
P.S.: So würdest Du das Blatt mit dem Namen 3 rot färben, egal an welcher Stelle es steht:
Private Sub Workbook_Open()
Dim Blatt As String
Blatt = Month(Now)
With ActiveWorkbook.Sheets(Blatt).Tab
.Color = 255 'rot
.TintAndShade = 0
End With
End Sub
Hallo,
Dein VBA bezieht auf den Monat, die Register von "wishes12" beziehen sich aber auf KW´s (Kalenderwochen) und nicht auf Monate, vielleicht hat er deshalb Probleme damit.
Eventuell ist die Anmerkung hilfreich für weiteres Vorgehen.
Gruß Tron
Mit Kalenderwochen gibt es keine Standardfunktion im VBA. Vielleicht erstmal mit den Monaten Testen, dass sich der Reiter rot färbt. (Er sollte sich ja auch wieder schwarz färben, wenn ein anderer Monat bzw. Kalenderwoche bzw. aktiv ist). Eine VBA-Funktion für die Kalenderwoche (nach deutscher Norm) findest Du hier: http://www.at-exceltraining.de/index.php/fragen-a-anworten-zu-excel/46-makro-und-vba-loesungen/210-vba-funktion-kalenderwoche.html
Da sollte aber eigentlich auch schon:
Application.WorksheetFunction.WeekNum
reichen. Bin aber nicht ganz sicher wegen der DIN.
Aber bevor ich mich da weiter "reinknie" warte ich erstmal ab, ob sich der FS überhaupt noch für Antworten interessiert.
Sieht im Moment leider nicht so aus.
Recht hast Du, ist in der Eile untergegangen.
Hier die Version Kalenderwoche:
Private Sub Workbook_Open()
Dim Arbbl As String
Arbbl = Application.WorksheetFunction.WeekNum(Now)
With ActiveWorkbook.Sheets(Arbbl).Tab
.Color = 255 'rot
.TintAndShade = 0
End With
End Sub
Gruß aus Berlin
Hallo Wishes,
ohne VBA Programmierung kannst du nichts machen. Ein automatisches Einfärben von Registerkarten geht nur, wenn Du ein Makro scriptest.
Viele Grüße
DatSchoof
Habe bezüglich Makro färben etwas im Internet gefunden:
https://www.computerwissen.de/office/excel/artikel/blattregister-per-makro-einfaerben.html
als entweder geht es nicht, oder ich bin zu doof es an der richtigen Stelle einzugeben 😂