Note: The other languages of the website are Google-translated. Back to English

Wie ändere ich die Farbe der Blattregisterkarte basierend auf dem Zellenwert?

Normalerweise können Sie die Registerkartenfarbe in Excel einfach und schnell ändern. Haben Sie jemals versucht, die Registerkartenfarbe basierend auf dem Zellenwert in einem Arbeitsblatt zu ändern? Wenn Sie an dieser Aufgabe interessiert sind, werde ich einige Codes erläutern, mit denen Sie die Registerkarte "Blatt" basierend auf einem bestimmten Zellenwert in Excel einfärben können.

Ändern Sie die Farbe einer Blattregisterkarte basierend auf dem Zellenwert mit VBA-Code

Ändern Sie mehrere Blattregisterkarten basierend auf dem Zellenwert mit VBA-Code


Pfeil blau rechte Blase Ändern Sie die Farbe einer Blattregisterkarte basierend auf dem Zellenwert mit VBA-Code

Ich möchte beispielsweise, dass die aktuelle Tabulatorfarbe grün ist, wenn der Zellenwert in A1 der Text „TRUE“ ist, die Tabulatorfarbe rot ist, wenn der Text in A1 „FALSE“ ist, und die Tabulatorfarbe blau ist, wenn Der Wert in Zelle A1 ist ein beliebiger anderer Text, wie im folgenden Screenshot gezeigt:

doc Farbblatt nach Wert 1

1. Klicken Sie mit der rechten Maustaste auf die Registerkarte "Blatt", deren Farbe Sie basierend auf den Daten in Zelle A1 ändern möchten, und wählen Sie dann Code anzeigen in dem Kontextmenü.

2. In dem Microsoft Visual Basic für Applikationen Kopieren Sie den folgenden VBA-Code und fügen Sie ihn in das Fenster ein Modul Fenster.

VBA-Code: Ändern Sie die Farbe einer Blattregisterkarte basierend auf dem Zellenwert:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
    If Target.Address = "$A$1" Then
        Select Case Target.Value
        Case "False"
            Me.Tab.Color = vbRed
        Case "True"
            Me.Tab.Color = vbGreen
        Case Else
            Me.Tab.Color = vbBlue
        End Select
    End If
End Sub

doc Farbblatt nach Wert 2

Hinweis: In dem obigen Code, A1 ist die Zellreferenz, auf der Sie die Registerkarte basierend auf „Wahre", "falsch”Sind der Text, den Sie benötigen, können Sie ihn nach Bedarf ändern und die Farbe im Code nach Bedarf ändern.

3. Speichern und schließen Sie dieses Codefenster. Wenn Sie jetzt in Zelle A1 den Text „True“ eingeben, wird die aktuelle Registerkartenfarbe grün, und wenn Sie in Zelle A1 den Text „False“ eingeben, wird die Registerkartenfarbe rot. und wenn anderer Text in die Zelle A1 eingegeben wird, wird die Registerkartenfarbe automatisch blau.


Pfeil blau rechte Blase Ändern Sie mehrere Blattregisterkarten basierend auf dem Zellenwert mit VBA-Code

Wenn Sie die Farbe mehrerer Blattregisterkarten basierend auf einem Zellenwert ändern müssen, kann Ihnen auch ein Code helfen. Gehen Sie dazu wie folgt vor:

1. Halten Sie die Taste gedrückt ALT + F11 Schlüssel zum Öffnen der Microsoft Visual Basic für Applikationen Doppelklicken Sie im geöffneten Fenster DiesesWorkbook unter dem VBAProjekt Kopieren Sie dann den folgenden Code und fügen Sie ihn in das Feld ein Modul:

VBA-Code: Ändern Sie mehrere Blattregisterkarten basierend auf dem Zellenwert:

Option Explicit
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  'Updateby Extendoffice 20160930
  Select Case Sheets("Master").Range("A1").Value
         Case "KTE"
             Sheets("Sheet1").Tab.Color = vbRed
         Case "KTO"
             Sheets("Sheet2").Tab.Color = vbGreen
         Case "KTW"
             Sheets("Sheet3").Tab.Color = vbBlue
         End Select
End Sub

doc Farbblatt nach Wert 3

Hinweis: In dem obigen Code, A1 und Master sind die Zelle und das Arbeitsblatt, auf denen Sie die Registerkarte basierend auf färben möchten. Sheet1, Sheet2, Sheet3 sind die Arbeitsblätter, mit denen Sie die Registerkarten einfärben möchten. KTE, KTW, KTO Sind die Zellenwerte in A1, auf denen Sie die Registerkarten einfärben möchten, können Sie die Referenzen und Farben im Code nach Bedarf ändern.

2. Speichern und schließen Sie dann dieses Codefenster. Wenn Sie jetzt den Text KTE in Zelle A1 des Master-Blattes eingeben, wird die Registerkarte Blatt1 rot gefärbt, wenn Sie KTO in Zelle A1 eingeben, wird das Blatt2 grün gefärbt und wann Wenn Sie KTW in Zelle A1 eingeben, wird das Blatt 3 blau gefärbt, siehe Screenshot:

doc Farbblatt nach Wert 4


Die besten Tools für die Office-Produktivität

Kutools for Excel löst die meisten Ihrer Probleme und erhöht Ihre Produktivität um 80%

  • Wiederverwendung: Schnell einfügen komplexe Formeln, Diagramme und alles, was du vorher benutzt hast; Zellen verschlüsseln mit Passwort; Mailingliste erstellen und E-Mails senden ...
  • Super Formelriegel (leicht mehrere Textzeilen und Formeln bearbeiten); Layout lesen (leichtes Lesen und Bearbeiten einer großen Anzahl von Zellen); In gefilterten Bereich einfügen...
  • Zellen / Zeilen / Spalten zusammenführen ohne Daten zu verlieren; Inhalt geteilter Zellen; Kombinieren Sie doppelte Zeilen / Spalten... doppelte Zellen verhindern; Bereiche vergleichen...
  • Wählen Sie Duplizieren oder Eindeutig Reihen; Wählen Sie Leere Zeilen (alle Zellen sind leer); Super Find und Fuzzy Find in vielen Arbeitsmappen; Zufällige Auswahl ...
  • Exakte Kopie Mehrere Zellen ohne Änderung der Formelreferenz; Referenzen automatisch erstellen zu mehreren Blättern; Aufzählungszeichen einfügen, Kontrollkästchen und mehr ...
  • Text extrahieren, Text hinzufügen, Nach Position entfernen, Leerzeichen entfernen;; Paging-Zwischensummen erstellen und drucken; Inhalt und Kommentare zwischen Zellen konvertieren...
  • Superfilter (Speichern und Anwenden von Filterschemata auf andere Blätter); Erweiterte Sortierung nach Monat / Woche / Tag, Häufigkeit und mehr; Spezialfilter fett, kursiv ...
  • Kombinieren Sie Arbeitsmappen und Arbeitsblätter;; Tabellen basierend auf Schlüsselspalten zusammenführen; Daten in mehrere Blätter aufteilen; Batch-Konvertierung von xls, xlsx und PDF...
  • Mehr als 300 leistungsstarke Funktionen. Unterstützt Office / Excel 2007-2021 und 365. Unterstützt alle Sprachen. Einfache Bereitstellung in Ihrem Unternehmen oder Ihrer Organisation. 30-tägige kostenlose Testversion mit allen Funktionen. 60 Tage Geld-zurück-Garantie.
kte tab 201905

Office Tab Bringt die Oberfläche mit Registerkarten in Office und erleichtert Ihnen die Arbeit erheblich

  • Aktivieren Sie das Bearbeiten und Lesen von Registerkarten in Word, Excel und PowerPoint, Publisher, Access, Visio und Project.
  • Öffnen und erstellen Sie mehrere Dokumente in neuen Registerkarten desselben Fensters und nicht in neuen Fenstern.
  • Steigert Ihre Produktivität um 50 % und reduziert jeden Tag Hunderte von Mausklicks für Sie!
officetab unten
Kommentare (23)
Noch keine Bewertungen. Bewerten Sie als Erster!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Sehr geehrter Herr.
Bitte helfen Sie mir, die Farbe der Blattregisterkarte basierend auf Datum / Tag zu ändern.

für zB:-
wenn Blatt Nr. 1 Sonntag ist, dann - Blattreiter 'ROT'
wenn Blatt Nr. 2 Montag ist, dann - Blattreiter 'Grün'
wenn Blatt Nr. 3 Dienstag ist, dann - Blattreiter 'Grün'
wenn Blatt Nr. 4 Mittwoch ist, dann - Blattreiter 'Grün'
wenn Blatt Nr. 5 Donnerstag ist, dann - Blattreiter 'Grün'
wenn Blatt Nr. 6 Freitag ist, dann - Blattreiter 'Grün'
wenn Blatt Nr. 7 Samstag ist, dann - Blattreiter 'Grün'

Bitte helfen Sie mir für das obige Excel-Problem.

Danke und Grüße
Faiz Ibn Uvaiz P.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Deine Beschreibung ist etwas vage, was du eigentlich vorhast. Wenn die Arbeitsmappe nur für eine Woche ist, dann färben Sie die Registerkarten. Wenn die Dauer länger als eine Woche ist, dann ist die Lösung etwas komplexer. Bis Sie das Problem detailliert beschrieben haben, stehen mehrere Lösungen zur Verfügung. Ich und viele Menschen werden unsere Zeit nicht damit verbringen, 2,000 Lösungen kostenlos für Sie zu programmieren. Aber wenn Sie das Problem detailliert beschreiben, bieten wir möglicherweise eine Lösung an.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Wie kann ich eine Registerkartenfarbe je nach Wetter ändern? Eine Reihe von Zellen enthält Text
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Die Formel funktioniert für "True" - Blattregister ist ROT, das ist großartig, aber wenn ich es von "True" auf "False" ändere, möchte ich, dass das Blatt "keine Farbe" hat. Wie lautet die Formel für keine Farbe auf der Blattregisterkarte, wenn „Wahr“ nicht ausgewählt ist? Auch wenn ich möchte, dass die Formel für eine Gruppe von Zellen gilt, z. A1:A30 Was ist der Code, den ich verwende?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Shannon:
Der folgende VBA-Code kann Ihnen einen Gefallen tun, versuchen Sie es bitte:

Private Sub Worksheet_Change (ByVal-Ziel als Bereich)
Dim xRg als Bereich
Setze xRg = Intersect(Target, Range("A1:A30"))
Wenn xRg nichts ist, dann beenden Sie Sub
Wählen Sie Fall-Zielwert aus
Fall "Wahr"
Me.Tab.Color = vbRed
Fall "Falsch"
Me.Tab.Color = False
End Select
End Sub

Hoffe das kann dir helfen!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Gibt es eine Möglichkeit, die Registerkartenfarbe basierend auf Folgendem zu ändern: Ich habe eine Master-Registerkarte, auf der die Zeilen 3-7 blau gefärbt sind und den entsprechenden Registerkarten 3-7 entsprechen (die basierend auf den Zellenwerten im Master in diese Zeilen), die ich gerne blau gefärbt hätte. Dann sind die Zeilen 8-12 grün gefärbt und entsprechen auch den Registerkarten 8-12 und so weiter.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Das war ein toller Trick.
Ich habe die Registerkartenfarbe basierend auf dem Wert der Zelle A1 (<>0 ROT und =0 Grün) verknüpft, das Makro wird jedoch nur ausgeführt, wenn ich A1 auswähle, dann F2 drücke und dann die Eingabetaste drücke. Ohne dies zu tun, sollte die Farbe der Registerkarte ( basierend auf ihrem Wert ) beispielsweise Rot sein, bleibt aber grün.
Ich verwende Excel 2007.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ist es möglich, dass dies funktioniert, wenn Zelle A1 alle 3 Antworten in separaten Zeilen innerhalb der Zelle haben kann? Das heißt, KTE, KTO und KTW sind alle in der Zelle vorhanden, da sie eine Mehrfachauswahl aus einer Dropdown-Liste ermöglichen.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich versuche, diesen Code zu verwenden und auf ein Kontrollkästchen anzuwenden. Wenn ich also das Kontrollkästchen ankreuze, ändert sich die Farbe, wenn ich es deaktiviere, ändert es sich zurück (ich habe wahr = grün, falsch = rot, sonst = rot). . Aber wenn ich das Kontrollkästchen aktiviere und deaktiviere, wird ein Fehler "Objekt benötigt" ausgegeben.


Privates Sub-CheckBox1_Click()
_____If Target.Address = "$e$5" Then 'error here
__________Fallziel auswählen.Wert
__________Fall "Falsch"
_______________Me.Tab.Color = vbRed
__________Fall "Wahr"
_______________Me.Tab.Color = vbGreen
__________Fall Sonst
_______________Me.Tab.Color = vbRed
__________Beenden Wählen
_____ Ende Wenn
End Sub

Ich habe es kopiert und eingefügt, um zu sehen, wie es läuft, und es dann an meine Bedürfnisse angepasst, aber ich habe keinen Weg gefunden, es zum Laufen zu bringen.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Liebe Kolleginnen und Kollegen,
Bitte um Hilfe. Ich muss die Blattregisterfarbe basierend auf dem Wert im Format [h]:mm ändern. Wenn der Wert beispielsweise unter 20:00 Uhr liegt - rot, >20:00 Uhr grün.
Danke und Grüße!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Liebe Kolleginnen und Kollegen,
Bitte um Hilfe. Ich muss die Blattregisterfarbe basierend auf dem Wert im Format [h]:mm ändern. Wenn der Wert beispielsweise unter 20:00 Uhr liegt - rot, >20:00 Uhr grün.
Danke und Grüße!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Viktor,
Der folgende VBA-Code kann Ihr Problem lösen, bitte versuchen Sie es, ich hoffe, er kann Ihnen helfen!

Private Sub Worksheet_Change (ByVal-Ziel als Bereich)
Dim xStr als Zeichenfolge
Dim xSN als Zeichenfolge
Dim xDate als Zeichenfolge
Dim xAddress als Zeichenfolge
Dim xArr() als String
Dim xI1 als Ganzzahl
Dim xSM als Zeichenfolge
xDatum = "20:00"
xAdresse = "$A$1"
Wenn Target.Address <> xAddress Then Exit Sub
xStr = Ziel.Text
xArr = Split(xStr, ":")
Wenn (UBound(xArr) - LBound(xArr) + 1) > 2 Then Exit Sub
xI1 = Int(xAnr(0))
Wenn (Len(xArr(0)) - 2) < 1 Dann
Wenn xI1 > 23, dann Sub verlassen
sonst
Exit Sub
End If
xSM = xArr(1)
Bei Fehler GoTo Err01
If (Len(xSM) - 2) <> 0 Then Exit Sub
If Int(Left(xSM, 1)) > 5 Then Exit Sub
If Int(Right(xSM, 1)) > 10 Then Exit Sub
Wenn xI1 >= 20 Dann
Me.Tab.Color = vbGreen
sonst
Me.Tab.Color = vbRed
End If
Fehler01:
End Sub
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Liebe Skyyang,
Sorry für die zu späte Rückmeldung. Diese Formel funktioniert, wenn ich den Wert in der Zelle manuell ändere. Aber das war nicht das, was ich brauche.
Der Zellenwert ist das Ergebnis einer Formel aus Differenzblättern. Dies ist beispielsweise die Formel in der Zelle "O13-'520'!AD3". Das bedeutet, dass sich der Wert in dieser Zelle abhängig vom Wert der anderen Zelle im anderen Blatt ändert. Was ich brauche, ist, dass die Blattfarbe automatisch geändert wird, wenn der Wert in der Zelle "O13-'520'!AD3" geändert wird, wenn der Wert in der Zelle "O13-'520'!AD3" unter 05:00 liegt - rot , >20:00 grün, zwischen 05:00 und 20:00 braun.
Danke im voraus und beste Grüsse!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo zusammen, wie ändere ich die Registerkartenfarbe basierend auf einem bestimmten Wert in der Spalte der mehreren Blätter? Vielen Dank
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Wie würden Sie die Registerkarte mit einem Wert in einer anderen Registerkarte verknüpfen? In meinem Beispiel habe ich eine Registerkarte mit allen Informationen, die automatisch auf verschiedene Registerkarten gefiltert werden. Jede Registerkarte wird jedoch grün oder rot angezeigt, je nachdem, ob auf der Master-Registerkarte ein Saldo aussteht. Ist dies mit diesem Code möglich und wenn ja, wo schreibe ich den Link zum Mastersheet in diesen Code?
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo,

Habe noch nie Code in Excel gemacht. Ich brauche einen Code, der tut, was dieser Code tut, aber ich brauche einen anderen Parameter.

Also was ich brauche ist:

Wenn der Zellenwert nicht 0 ist und/oder wenn eine andere Zelle Zahlen enthält, ändern Sie die Farbe mit count in rot

Wenn der Zellenwert 0 ist und diese anderen Zellen leer sind, ändern Sie die Farbe mithilfe von count in grün
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo, ich habe versucht, die Farbe der Registerkarte basierend auf dem Wert auf einem separaten Blatt namens Tracking hier zu ändern, aber es scheint nicht zu funktionieren. Vielen Dank




Private Sub Worksheet_Change (ByVal-Ziel als Bereich)

'Updateby Extendoffice 20160930

If Target.Address = "Tracking!$C$2" Then

Wählen Sie Fall-Zielwert aus

Fall "ip"

Me.Tab.Color = vbRed

Fall "w"

Me.Tab.Color = vbYellow

Fall "c"

Me.Tab.Color = vbGreen

Case Else

Me.Tab.Color = vbBlue

End Select

End If

End Sub
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Brad,
Damit der Code korrekt ausgeführt wird, sollten Sie den Blattnamen nicht in den Code einfügen, sondern den folgenden Code verwenden: (Klicken Sie auf den Blattnamen, auf dem Sie diesen Code ausführen möchten, und klicken Sie dann mit der rechten Maustaste auf den Blattnamen und wählen Sie dann Code anzeigen Code in das Modul einfügen)

Private Sub Worksheet_Change (ByVal-Ziel als Bereich)

'Updateby Extendoffice 20160930

If Target.Address = "$C$2" Then

Wählen Sie Fall-Zielwert aus

Fall "ip"

Me.Tab.Color = vbRed

Fall "w"

Me.Tab.Color = vbYellow

Fall "c"

Me.Tab.Color = vbGreen

Case Else

Me.Tab.Color = vbBlue

End Select

End If

End Sub

Bitte versuchen Sie es, ich hoffe, es kann Ihnen helfen!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich möchte die Farbe der Registerkarte basierend auf einem von 2 Ergebnissen einer Formel ändern. Ich habe eine Formel von =IF((AND(AA1="Belegt",AA2="Belegt",AA3="Belegt",AA4=" Belegt")),"Besetzt","Frei")
Ich brauche die Registerkarte rot, wenn "besetzt" und grün, wenn "frei". Der obige Code im Hauptbeitrag erkennt jedoch die Ausgabe von If Than nicht
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo,
Ich brauche etwas Hilfe
Ich muss die Blattregisterfarbe nur ändern, wenn in einem bestimmten Zellbereich das heutige Datum vorliegt
Sagen Sie zum Beispiel,
Spalte L hat einige Daten im Format (13. Mai-22)
Einer der Zellenwerte ist das heutige Datum, dann sollte sich die Farbe der Registerkarte in Rot ändern
Bitte helfen
Vielen Dank im Voraus
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich möchte, dass meine Registerkarte die Farbe ändert, wenn eine Zelle in Spalte O oder Spalte P einen Wert enthält. Ist das möglich?

Vielen Dank!
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Ich möchte die Blattregisterfarbe basierend auf der Farbe der Zelle j4 in jedem Blatt festlegen. Es gibt mehr als 18 Registerkarten und Sie möchten die Registerkartenfarben aktualisieren, wenn die Arbeitsmappe geöffnet wird. Wenn ich beim Öffnen nicht aktualisieren kann, kann ich das Makro ausführen, nachdem die Teams die Blätter aktualisiert haben.
Dieser Kommentar wurde vom Moderator auf der Website minimiert
Hallo Holz
Um Ihr Problem zu lösen, wenden Sie bitte den folgenden Code an: (Hinweis: Kopieren Sie den folgenden Code und fügen Sie ihn in die ein DiesesWorkbook Codemodus)
Private Sub Workbook_AfterSave(ByVal Success As Boolean)
Call SetSheetColor
End Sub

Private Sub Workbook_Open()
Call SetSheetColor
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
Call SetSheetColor
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Call SetSheetColor
End Sub

Sub SetSheetColor()
Dim xWShs As Sheets
Dim xRg As Range
Dim xFNum As Integer
Dim xSh As Worksheet
On Error Resume Next
Set xWShs = Application.ActiveWorkbook.Sheets
For xFNum = 1 To xWShs.Count
    Set xSh = xWShs.Item(xFNum)
    Set xRg = xSh.Range("J4")
    xSh.Tab.Color = xRg.Interior.Color
Next
End Sub


https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-color-sheet.png

Bitte versuchen Sie es, ich hoffe, es kann Ihnen helfen!
Es sind noch keine Kommentare vorhanden
Hinterlassen Sie Ihre Kommentare
Als Gast posten
×
Bewerte diese Nachricht:
0   Figuren
Vorgeschlagene Standorte

Folgen Sie uns

Copyright © 2009 - www.extendoffice.com. | Alle Rechte vorbehalten. Unterstützt von ExtendOffice. | Sitemap
Microsoft und das Office-Logo sind Marken oder eingetragene Marken der Microsoft Corporation in den USA und / oder anderen Ländern.
Geschützt durch Sectigo SSL