Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1764to1768
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
TabellenblattReiter Farbe ändern
12.06.2020 21:53:11
Eberhard
Hallo zusammen
Ich habe schon mal im Forum nachgefragt. Ich möchte das der Tabellenblattreiter einen grünen Hintergrund hat. Sobald alle Zellen B4 bis B28 befüllt sind, soll er die Farbe auf rot wechseln. Unterstehender Code habe ich verwendet. Doch plötzlich geht er nicht mehr! Was könnte da falsch sein? Habe eine neue Excel Datei geöffnet und den Code aus diesem Forum 1:1 Kopiert. Funktioniert einfach nicht mehr!!! :-(
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Cells.Interior.Color = IIf(WorksheetFunction.CountBlank(Range("B4:B28")) = 0, vbRed, xlNone)
End Sub
Kann mir da jemand helfen oder ist mir nicht mehr zu helfen? Besten Dank! Gruss Daniel

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: TabellenblattReiter Farbe ändern
12.06.2020 21:59:51
onur
"Cells." färbt doch alle Zellen, was hast das mit dem Reiter zu tun?
Ausserdem wenn schon, dann:
Sh.Range("B4:B28")

AW: TabellenblattReiter Farbe ändern
12.06.2020 22:09:23
Eberhard
Hallo onur
Das habe ich auch festgestellt. Sah nur noch rot! :-) Wie muss ich das machen, damit mein Wunsch in Erfüllung geht? Ist halt auch schwierig die Wünsche zu beschreiben! Gruss Daniel
AW: TabellenblattReiter Farbe ändern
12.06.2020 22:12:07
onur
Doch plötzlich geht er nicht mehr ? Verstehe ich aber nicht - er kann NIE funktioniert haben.
AW: TabellenblattReiter Farbe ändern
12.06.2020 22:16:11
Eberhard
Hallo onur
Das hat er auch nicht. Jedenfalls nicht mit dem Reiter! Das mit den Zellen hat wenigstens funktioniert. Doch plötzlich wie aus dem nicht's ging auch das nicht mehr! Aber habe am Code nicht verändert!?! Komme mir so blöd vor! :-(
Anzeige
AW: TabellenblattReiter Farbe ändern
12.06.2020 22:19:52
onur
Kann es sein, dass der Code vorher nicht in
Workbook_SheetChange
stand, sondern in
Worksheet_Change
stand?
AW: TabellenblattReiter Farbe ändern
12.06.2020 22:59:40
Eberhard
Hallo Unor
Habe vieles versucht. Aber es funktioniert nicht! Habe aber von GerdL einen Code erhalten der Funktioniert! Vielen Dank auch Dir für Deine Bemühungen! Gruss Daniel
AW: TabellenblattReiter Farbe ändern
12.06.2020 22:16:54
Firmus
Hi Eberhard,
du willst nicht die Zellen einfärben, sondern die Tabs. so dass in der 'Übersicht' schon
erkennbar ist, ob die Bedingung erfüllt ist?
Das Einfärgben geht so: (Recorder-Ergebnis)

Sheets("Tabelle1").Select
With ActiveWorkbook.Sheets("Tabelle1").Tab
.Color = 255
.TintAndShade = 0
End With
Sheets("Tabelle2").Select
With ActiveWorkbook.Sheets("Tabelle2").Tab
.Color = 65535
.TintAndShade = 0
End With
Sheets("Tabelle3").Select
With ActiveWorkbook.Sheets("Tabelle3").Tab
.Color = 5287936
.TintAndShade = 0
End With
T1=rot, T2=gelb, T3=grün
Die Bedingung das auszulösen wird hier noch nicht geprüft.
Gruß,
Firmus
Anzeige
AW: TabellenblattReiter Farbe ändern
12.06.2020 22:32:11
GerdL
Moin,
beide ins Modul DieseArbeitsmappe, Datei speichern,schließen u. wieder öffnen.
Private Sub Workbook_Open()
Dim Wsh As Worksheet
For Each Wsh In ThisWorkbook.Worksheets
Wsh.Tab.Color = IIf(WorksheetFunction.CountBlank(Wsh.Range("B4:B28")) = 0, vbRed, vbGreen)
Next
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
If Not Intersect(Target, Range("B4:B28")) Is Nothing Then
Sh.Tab.Color = IIf(WorksheetFunction.CountBlank(Sh.Range("B4:B28")) = 0, vbRed, vbGreen)
End If
End Sub

AW: TabellenblattReiter Farbe ändern
12.06.2020 23:00:51
Eberhard
Hallo GerdL
Hey super! So wie ich mir das vorgestellt habe! Vielen Dank & einen schönen Abend! Gruss Daniel
Anzeige
AW: TabellenblattReiter Farbe ändern
13.06.2020 13:26:18
Eberhard
Guten Tag
Dies mit den Reiter funktioniert wunderbar!
Doch habe ich ein weiteres Problem.
Ich habe folgenden Code eingegeben:
Private Sub CommandButton3_Click()
Dim Spalte As Integer
Dim SpalteEnd As Integer
With Sheets(1)
Range("B4:E7,B9:E28").Copy
Sheets(5).Range("A1").PasteSpecial Paste:=xlPasteValues, Transpose:=True
Application.CutCopyMode = False
End With
With Sheets(5)
SpalteEnd = .UsedRange.Columns.Count
For Spalte = SpalteEnd To 1 Step -1
If .Cells(1, Spalte).Value = "" Then
.Columns(Spalte).Delete
End If
Next Spalte
End With
Application.CutCopyMode = False
End Sub
Dieser hat eigentlich funktioniert.
Nachdem ich diesen Code für die Reiter eingegeben habe, kommt eine Fehlermeldung Laufzeitfehler 1004 Die Methode 'Intersect' für das Objekt '_Global' ist fehlgeschlagen. Danach springt er auf folgende Zeile und markiert diese Gelb! Was ist da falsch? Gruss Daniel
If Not Intersect(Target, Range("B4:B28")) Is Nothing Then

Anzeige
AW: TabellenblattReiter Farbe ändern
13.06.2020 18:54:32
Mullit
Hallo,
das Click-Event kennt kein Target-Objekt, laß einfach die If-Anw. weg:
Sheets(5).Tab.Color = IIf(WorksheetFunction.CountBlank(Sheets(5).Range("B4:B28")) = 0, vbRed, vbGreen)

Gruß, Mullit
AW: TabellenblattReiter Farbe ändern
13.06.2020 20:02:32
Eberhard
Hallo Mullit
Danke für Deinen Hinweis. Habe die Formel angepasst und jetzt funktioniert der Rest auch wieder. Danke! Gruss Daniel
AW: alles klar, prima...owT
13.06.2020 21:13:29
Mullit

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige