Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1532to1536
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
Inhaltsverzeichnis

Aktives Textfeld einfärben

Aktives Textfeld einfärben
03.01.2017 14:44:17
Marcel
Hallo zusammen,
ich bin hier als Beitragsersteller noch ganz neu und auch was Makros in Excel angeht, habe ich noch nicht all zu viel Erfahrung. Ich habe nun aber ein Anliegen, bei dem ich ohne Hilfe wohl nicht weiterkomme.
Zum besseren Verständnis habe ich hier mal eine Datei hochgeladen, die mein Problem besser darstellt: https://www.herber.de/bbs/user/110306.xlsm
Wie man sieht, habe ich in der Datei drei Textfelder, die mit Makros versehen sind und die auf Knopfdruck quasi einen Zellwert aus einem anderen Tabellenblatt in eine andere Zelle ausweisen sollen. Soweit so gut.. das funktioniert ja auch. Allerdings möchte ich nun, dass sich die Hintergrundfarbe des Textfeldes ändert, das aktuell ausgewähl wurde. Klicke ich also auf Text 2 soll das Textfeld dazu in einer anderen Farbe erstrahlen als die anderen beiden. Wenn ich danach nun auf Text 3 klicke, sollen Text 1 und Text 2 wieder ihre Ursprungsfarbe bekommen, während das Textfeld zu Text 3 eine andere Farbe erhält. Ich hoffe ich habe verständlich ausgedrückt was ich meine.. ich komme an dieser Stelle nicht weiter. Die Farbe per Klick zu ändern ist auch noch das geringe Übel, aber Excel dann zu sagen, dass die Farben aller anderen Textfelder "zurückgesetzt" werden sollen, wenn ich ein anderes Textfeld anklicke, überschreitet wohl noch meine Kompetenzen. Vielleicht finde ich hier ja aber den richtigen Weg.
Vielen Dank vorab :)

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Aktives Textfeld einfärben
03.01.2017 15:06:14
Daniel
Hi
probier mal diesen Code.
du kannst ihn allen 3 Feldern zuweisen.
das Makro kann über die Funktion Application.Caller ermitteln, welches Feld den Code aufgerufen hat und damit kannst du dann im Makro differenziert reagieren.
Sub Bei_Klick()
ActiveSheet.Shapes("Textfeld 1").Fill.ForeColor.RGB = RGB(146, 208, 80)
ActiveSheet.Shapes("Textfeld 2").Fill.ForeColor.RGB = RGB(146, 208, 80)
ActiveSheet.Shapes("Textfeld 3").Fill.ForeColor.RGB = RGB(146, 208, 80)
ActiveSheet.Shapes(Application.Caller).Fill.ForeColor.RGB = RGB(255, 0, 0)
Select Case Application.Caller
Case "Textfeld 1"
Cells(2, 3).FormulaR1C1 = "=Tabelle2!R[1]C"
Case "Textfeld 2"
Cells(2, 3).FormulaR1C1 = "=Tabelle2!R[2]C"
Case "Textfeld 3"
Cells(2, 3).FormulaR1C1 = "=Tabelle2!R[3]C"
Case Else
Cells(2, 3).ClearContents
End Select
End Sub
Gruß Daniel
Anzeige
AW: Aktives Textfeld einfärben
03.01.2017 15:14:57
Marcel
Hallo Daniel,
vielen Dank für die schnelle Rückmeldung. Das klappt in meiner Beispiel Excel-Tabelle zumindest einwandfrei. Ich probiere das mal in die richtige Tabelle zu übertragen. Falls ich noch einmal Hilfe benötige, melde ich mich hier erneut zu Wort. Besten Dank :)
Gruß, Marcel
AW: Aktives Textfeld einfärben
03.01.2017 16:16:05
Marcel
Super.. hat auch in meiner "richtigen" Excel-Tabelle funktioniert. Vielen Dank nochmal :)

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige