Clever-Excel-Forum

Normale Version: Textfeld farbig per Makro füllen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

ich habe eine Datei, in der ich per Makro jeden Tag iin dem Arbeitsblatt "Vorlage" ein neues Arbeitsblatt erzeuge.
Auf diesem Arbeitsblatt befindet sich ein Textfeld, welches einen Zellwert (C3) ausgibt. 

Ich möchte, dass dieses Textfeld, sich anhängig von dem Zellwert in C3, automatisch färbt. Dazu ist ein Code hinterlegt, der leider nicht so funktioniert.

[attachment=30467]

Habt ihr eine Idee, wie das funktionieren kann?

MfG
Matze
So Läuft`s

Code:
Private Sub Worksheet_Change(ByVal Target As Range)

        If Range("c3") <= 45 Then
        ActiveChart.Shapes.Range("Textfeld 54").Fill.ForeColor.RGB = RGB(255, 0, 0) 'rot
        Else
       
        If Range("c3") < 50 Then
        ActiveChart.Shapes.Range("Textfeld 54").Fill.ForeColor.RGB = RGB(255, 192, 0) 'orange
        Else
       
        ActiveChart.Shapes.Range("Textfeld 54").Fill.ForeColor.RGB = RGB(0, 176, 80) 'gr?n
       
        End If
        End If

End Sub
Hallo,

irgendwie funktioniert dass nicht so. Das Textfeld färbt sich immer noch nicht automatisch.
Wenn das Makro über den Button "Neues Blatt mit heutigem Datum" gewählt wird, färbt sich das Textfeld innerhalb der Grafik nicht.

Wenn ich das bspw. für 10 Tage fülle, soll sich das Textfeld je nach Höhe des Wertes anpassen. Das macht es aber nicht.
[attachment=30495]
MfG
Matze
Hallöchen,

im Code hast Du ein Textfeld 14:

ActiveSheet.Shapes("Textfeld 14").Fill.ForeColor.RGB =


Das gibt es nicht. Wenn Du mal ein Textfeld anklickst siehst Du oben, dass es Texxtfeld 54 heißt Sad
Moin,

das Problem ist, dass sich die Nummer des Textfeldes bei jedem Anlegen eines neues Datenblattes verändert. 
Das Textfeld müsste evtl. variabel deklariert sein, oder?

MfG
Matze
Hi Matze,

in der Datei hatten alle Textfelder die 54. Das kommt durch's Kopieren des kompletten Blattes.
Hallo Andre,

da hast du recht. Aber selbst wenn ich in dem Makro das Textfeld auf 54 ändere, färbt es sich nicht.

Ist das bei dir anders?
Hallöchen,

das Textfeld liegt innerhalb des Diagramms und nicht imBlatt. Daher z.B.

ActiveSheet.ChartObjects("Diagramm 2").Chart.Shapes("Textfeld 54").Fill.ForeColor.RGB = RGB(0, 176, 80) 'gruen