Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
584to588
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
584to588
584to588
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

BackColor von TextBox auf Frame

BackColor von TextBox auf Frame
15.03.2005 20:04:18
Vliegen
Hallo allesamt,
Habe noch eine zweite Frage :
Auf einem Form kann ich die Hintergrundfarbe einer Textbox verändern wenn diese aktiv ist.
Habe dazu ein Makro mit

Sub HintergrundFärben ()
Me.ActiveControl.BackColor= RGB (x,x,x)
End Sub

'und ein anderes zu zurückstellen der weissen Farbe.

Sub HintergrundZurückstellen ()
Me.ActiveControl.BackColor= RGB (255,255,255)
End Sub

Bei Enter oder Exit der einzelnen TextBoxen starte ich dann das jeweils zugehörige dieser beiden Makros. Das geht auch gut.
Aber
Sobald die Textboxen auf einem Frame sind leuchtet dieses und nicht die Textbox.
Hab versucht mit Parent das Frame farblich auszuschalten aber das klappt auch nicht. Dann wird die gesamte Userform blass aber immer noch nicht das Frame.
Kann mir da jemand weiterhelfen ?
Würde mich sehr freuen.

MfG Francois

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: BackColor von TextBox auf Frame
15.03.2005 20:28:03
Nepumuk
Hallo Francois,
das ist auch richtig so, denn das aktive Control im Form ist der Frame. Die Textbox darauf ist ein Control dessen. Der Frame ist wie ein kleines Form im Form. Die Controls darauf kannst du so ansprechen:


Private Sub HintergrundZurückstellen()
    If TypeOf Me.ActiveControl Is Frame Then
        Me.Controls(ActiveControl.Name).ActiveControl.BackColor = RGB(255, 255, 255)
    Else
        Me.ActiveControl.BackColor = RGB(255, 255, 255)
    End If
End Sub


Gruß
Nepumuk
Anzeige
AW: BackColor von TextBox auf Frame
15.03.2005 20:28:37
Bert
Stell in der Aktivierreihenfolge des Frames diesen nach ganz unten.
Bert
AW: BackColor von TextBox auf Frame
15.03.2005 20:44:21
Vliegen
Danke beiden,
Aber ich bin nicht ganz zufrieden mit den Antworten.
Leider erscheint damit die Textbox im Frame (hab ja da eine draufgeklebt) ja nicht farblich wenn ich sie aktiviere.
Die anderen rund um das Frame klappen nach der Methode von Nepumuk . Aber beim Schliessen der Form gibt es eine Bugg.
Kann man die Textboxen auf dem Frame nicht separat färben ohne das Frame selbst. Habe festgestellt dass die in der Aktivierreihenfolge gar nicht erscheinen. Habe die keine eigenen Identität ?
François
Anzeige
AW: BackColor von TextBox auf Frame
15.03.2005 20:54:51
Bert

Sub HintergrundFärben ()
Frame1.ActiveControl.BackColor= RGB (x,x,x)
End Sub

Bert
AW: BackColor von TextBox auf Frame
15.03.2005 21:06:11
Vliegen
Danke Bert,
Läuft wenn ich den Code beim Enter-Ereignis der Textbox einfüge.
Bei Exit allerdings klappt es dann nicht mehr. Die Farbe bleibt auch wenn ich die RGB zurückstelle. Warum ?
Würde mich freuen diese letzte Hürde aus der Welt geschafft zu wissen.
Danke
Francois
AW: BackColor von TextBox auf Frame
15.03.2005 20:57:44
Nepumuk
Hallo François,
wie schon geschrieben, ist die Textbox im Frame ein Control des Frames. Dieser hat eine eigene Aktivierreihenfolge (Rechtsklick auf den Frame - Aktivierreihenfolge). Da ich nicht weiß mit welchem Ereignis die Box gefärbt / entfärbt werden, habe ich nur deinen Code erweitert.
Gruß
Nepumuk
Anzeige
AW: BackColor von TextBox auf Frame
15.03.2005 21:11:22
Vliegen
Hallo Nepumuk
Färben und Entfärben erfolgt über Enter und Exit Ereignis der Textbox.
Beim Ente hat mir Bert den Code gegeben. Bei Exit läuft es noch nicht.
François
AW: BackColor von TextBox auf Frame
15.03.2005 21:24:25
Nepumuk
Hallo François,
mal ein Beispiel für ein Frame mit zwei Textboxen (1 und 2) und einer Textbox (3) auf dem Form:


Private Sub Frame1_Enter()
    TextBox1.BackColor = RGB(255, 0, 0)
End Sub
Private Sub Frame1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.BackColor = RGB(255, 255, 255)
    TextBox2.BackColor = RGB(255, 255, 255)
End Sub
Private Sub TextBox1_Enter()
    TextBox1.BackColor = RGB(255, 0, 0)
End Sub
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox1.BackColor = RGB(255, 255, 255)
End Sub
Private Sub TextBox2_Enter()
    TextBox2.BackColor = RGB(255, 0, 0)
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox2.BackColor = RGB(255, 255, 255)
End Sub
Private Sub TextBox3_Enter()
    TextBox3.BackColor = RGB(255, 0, 0)
End Sub
Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
    TextBox3.BackColor = RGB(255, 255, 255)
End Sub


Gruß
Nepumuk
Anzeige
AW: BackColor von TextBox auf Frame
15.03.2005 21:45:14
Vliegen
Danke Nepumuk,
Das klappt prima. Vielen Dank schonmal dafür.
Bin jetzt mal dreist denn ich hab noch ein zweites Problem mit der Userform. Nämlich mit der Erfassung der Daten und dem Einlesen der TextBoxen und ComboBoxen. Steht in Beitrag etwas tiefer mit der Frage ActiveCell und Offset.
Könntest du dich dieser Problematik vielleicht auch annehmen denn du scheinst kompetent und ich krieg das Ding irgendwie nicht ans laufen und es ist eine dringende Sache. Wie gesagt es läuft auf anderen Forms nach dem Muster aber hier nicht.
Würde mich freuen.
Danke

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige