Registerkarte in Excel automatisch färben
Hallo zusammen
Ich habe mir eine Zeiterfassung in Excel gebaut.
Um die Register leichter zu finden in denen spezielle Werte stehen, würde ich gerne die Registerkarte automatisch färben.
Beispiel: WENN (A1 = "WA";[Färbe Register Rot];;)
Ich habe zwar schon ein Beispiel gefunden, aber ich konnte es nicht an meine Bedürfnisse umbauen so das es funktioniert.
(In dem Beispiel habe ich einen Rechtsklick auf den entsprechenden Tab gemacht und "Code anzeigen" gewählt)
Was ich gefunden habe sah so aus:
Das habe ich umgebaut:
Hat aber leider nicht funktioniert.
Kann mir jemand auf die Sprünge helfen?
Gruß Ralf
Ich habe mir eine Zeiterfassung in Excel gebaut.
Um die Register leichter zu finden in denen spezielle Werte stehen, würde ich gerne die Registerkarte automatisch färben.
Beispiel: WENN (A1 = "WA";[Färbe Register Rot];;)
Ich habe zwar schon ein Beispiel gefunden, aber ich konnte es nicht an meine Bedürfnisse umbauen so das es funktioniert.
(In dem Beispiel habe ich einen Rechtsklick auf den entsprechenden Tab gemacht und "Code anzeigen" gewählt)
Was ich gefunden habe sah so aus:
If [AH5].Value < Date Then
ActiveSheet.Tab.ColorIndex = 3
Else
ActiveSheet.Tab.ColorIndex = 4
End If
Das habe ich umgebaut:
If [A1].Value = "WA" Then
ActiveSheet.Tab.ColorIndex = 3
End If
Hat aber leider nicht funktioniert.
Kann mir jemand auf die Sprünge helfen?
Gruß Ralf
Please also mark the comments that contributed to the solution of the article
Content-Key: 321965
Url: https://administrator.de/contentid/321965
Printed on: May 4, 2024 at 07:05 o'clock
14 Comments
Latest comment
Hallo,
und setze einen Haltepunkt (F9) bei dein ActiveSheet.Tab.Coloindex = 3. damit wird das VBA dort angehalten und du kannst im Debug Fenster (vorher Einschalten) sehen was dein [A1].Value liefert. (einfachstes Debuging - ungewollte Käfer entfernen)
Gruß,
Peter
Zitat von @ralfkausk:
Um die Register leichter zu finden in denen spezielle Werte stehen, würde ich gerne die Registerkarte automatisch färben.
Bedingte Formatierung nutzen.Um die Register leichter zu finden in denen spezielle Werte stehen, würde ich gerne die Registerkarte automatisch färben.
Hat aber leider nicht funktioniert.
Was genau steht in A1 denn drin? Auch ein Leerzeichen hat einen Wert, nur NULL ist nichts Wenn dein IF eben nicht die zelle einfrbt, steht logischerweise etwas in A1 was nicht HA entspricht. Groß/Kleinschreibung, Leerzeichen, Nicht darstellbare Zeichen. Du prüfts hier auf exakt HA und nicht irgend etwas anderes. Es muss exakt HA sein damit dein IF ein True (Wahr) ergibt und die Bedingung der Gleichung aufgeht. Deine Gleichung ist Wert = HA. Wenn diese Gleichung auf beiden Seiten des gleichheitszeichen Identische Werte hat, wird die Frage nach dem Ergebnis der Gleichung mit Wahr oder Falsch gemeldet. Dieses Wahr löst den Sprung zur nächsten Anweisung aus oder ein Falsch eben zur nächsten bedingung oder wir bei dir zum End If und bei dir wird nix Bunt.Kann mir jemand auf die Sprünge helfen?
Mach mal einIf [A1].Value = "WA" Then
Debug.Print [A1].Value
ActiveSheet.Tab.ColorIndex = 3
End If
Gruß,
Peter
Leider nein
Hi,
Hatte kein Excel geöffnet und bin daher auch die Adressierung nicht durchgegangen. Hatte die Hoffnung das er beim Debuggen schnell gefunden hätte das seine Art der Adressierung hier nicht zum gewünschten Ziel führt. Zeigt aber auch das der TO hier ohne Sinn und Verstand einfach irgendetwas von irgendwoher hier rein kopiert hat und nur die Hoffnung hatte das sich buntes ergibt. Copy und Paste verleitet eben dazu nicht zu wissen was man denn tut. Ob dem TO sein Copy und Paste gar von einen VBA Schnippsel herrührt ist daher auch fraglich. Die Adressierung sticht jedenfalls deutlich ins Auge wenn man sich mit VBA beschäftigt hätte...
Gruß,
Peter
Hatte kein Excel geöffnet und bin daher auch die Adressierung nicht durchgegangen. Hatte die Hoffnung das er beim Debuggen schnell gefunden hätte das seine Art der Adressierung hier nicht zum gewünschten Ziel führt. Zeigt aber auch das der TO hier ohne Sinn und Verstand einfach irgendetwas von irgendwoher hier rein kopiert hat und nur die Hoffnung hatte das sich buntes ergibt. Copy und Paste verleitet eben dazu nicht zu wissen was man denn tut. Ob dem TO sein Copy und Paste gar von einen VBA Schnippsel herrührt ist daher auch fraglich. Die Adressierung sticht jedenfalls deutlich ins Auge wenn man sich mit VBA beschäftigt hätte...
Gruß,
Peter
Hallo,
Si.
Passiert wenn man schnell mal eben etwas überfliegt und das Zauberwort (hier Registerkarte) gar nicht registriert hat denn die Wörter "Excel - Zellwert - Einfärben" reichen ja schon um uns ans laufen zu bringen und schnell mal eben die Lösung hingehaucht wird
Wer Lesen kann ist klar im Vorteil
Gruß,
Peter
Si.
Passiert wenn man schnell mal eben etwas überfliegt und das Zauberwort (hier Registerkarte) gar nicht registriert hat denn die Wörter "Excel - Zellwert - Einfärben" reichen ja schon um uns ans laufen zu bringen und schnell mal eben die Lösung hingehaucht wird
Wer Lesen kann ist klar im Vorteil
Gruß,
Peter
Moin,
nimm es nicht so schwer - wenn ich mir die Threads hier heute so ansehe, könnte es schon Freitag sein
nimm es nicht so schwer - wenn ich mir die Threads hier heute so ansehe, könnte es schon Freitag sein
Hi,
Wie sagten letztens Jugendliche am Rheinufer stehend während sie einen ertrinkenden zuschauten "Wenns wichtig wär, gebe es eine APP. Es gibt keine, lasst uns weitergehen"
Gruß,
Peter
Zitat von @Kraemer:
nimm es nicht so schwer - wenn ich mir die Threads hier heute so ansehe, könnte es schon Freitag sein
Und ich dachte schon der Freitag ist bis einschließlich Donnerstag verlängert worden - wenn man die Fragen hier als Wochentagsbestimmer nimmt. Da war das mit einen Sextanten bestimmen des Standorts bei Schnee, Nebel, Regen und Dunkelheit ja noch richtig einfach nimm es nicht so schwer - wenn ich mir die Threads hier heute so ansehe, könnte es schon Freitag sein
Wie sagten letztens Jugendliche am Rheinufer stehend während sie einen ertrinkenden zuschauten "Wenns wichtig wär, gebe es eine APP. Es gibt keine, lasst uns weitergehen"
Gruß,
Peter
Hallo Ralf!
Sollte z.B. so gehen:
Code in DieseArbeitsmappe (ThisWorkbook) einfügen
Gruß Dieter
Sollte z.B. so gehen:
Option Explicit
Option Compare Text
Private Sub Workbook_SheetChange(ByVal Sheet As Object, ByVal Target As Range)
If Target.Address = "$A$1" Then
If Target.Text Like "wa" Then 'Keine Groß/Klein-Unterscheidung
Sheet.Tab.ColorIndex = 3
End If
End If
End Sub
Gruß Dieter
hallo,
Einer der möglichen möglichkeiten ist allerdings als Quellcode irgendwo auf der Welt als Patent.....
Gruß,
Peter
Zitat von @116301:
If Target.Text Like "wa" Then 'Keine Groß/Klein-Unterscheidung
Oder auch ein IF Uppercase(Target.Text) = "WA" Then oder Lowercase oder beidseitig Upper- bzw. Lowercase .....wobei hier z-B. Case und andere Schleifen/Prüf methoden noch gar nicht angesprochen wurden...If Target.Text Like "wa" Then 'Keine Groß/Klein-Unterscheidung
Einer der möglichen möglichkeiten ist allerdings als Quellcode irgendwo auf der Welt als Patent.....
Gruß,
Peter
Hallo,
Eine Fehlermeldung solltest du schon haben oder uns ganz genau sagen was stattdessen pssiert?
Gruß,
Peter
Eine Fehlermeldung solltest du schon haben oder uns ganz genau sagen was stattdessen pssiert?
Es gibt beim speichern eine Fehlermeldung
Hast du davon den Text oder gar ein Bild?Aber, die Karteireiterfarbe wird nicht geändert.
Warum sollte beim Speichern das auch passieren?Gruß,
Peter
Hallo,
Wunder wenn fast alle Lösungen schon vorliegen Die Case Version fehlte aber
Gruß,
Peter
Wunder wenn fast alle Lösungen schon vorliegen Die Case Version fehlte aber
Das hat den charmanten vorteil das ich Änderungen am Code nur 1x machen muss.
Der normaler weg etwas zu programmieren. 'If myCell.Value = "wa" Then
Achte darauf das du dort niemals Wa oder wA oder WA stehen hast. Und weiter unten im Code ebenfalls. Sonst kommt nicht Grün wenn du es erwartest. (Gros / kleinschreibung beachten) z.B. If Uppercase$(myCell.Value) = Uppercase$"wa" then....Gruß,
Peter