Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

farbe von label mit mouseover ändern

Forumthread: farbe von label mit mouseover ändern

farbe von label mit mouseover ändern
16.05.2005 16:31:51
label
hallo leute, wie es der betreff schon sagt möchte ich die farbe eines labels beim darüberfahren desselbigen ändern,ist mir auch schon einigermassen gelungen,problem ist: beim verlassen mit der maus behält das label seine neue farbe,es soll wieder seine ursprungsfarbe annehmen...gruss aus bremen
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: farbe von label mit mouseover ändern
16.05.2005 16:34:58
label
Hallo manfred,
das problem wurde gerade vor paar Tageb behandelt. Du mußt darunter noch ein Label benutzen und dort die Aktion zum zurückstellen benutzen.
Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.



"Wer Rechtschreibfehler findet, darf sie behalten!"
Dies gilt auch für Bert.
Anzeige
AW: farbe von label mit mouseover ändern
16.05.2005 16:41:10
label
danke für den vorschlag, aber gibts da keine bessere möglichkeit,denn es befinden sich mehrere labels auf dem blatt, die alle jeweils während eines mouseover ihre farbe wechseln sollen
AW: farbe von label mit mouseover ändern
16.05.2005 16:47:47
label
Hallo Manfred,
was spricht dagegen 10 label auf ein Label zu plazieren?
Ich habe es jetzt nicht getestet.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.

"Wer Rechtschreibfehler findet, darf sie behalten!"
Dies gilt auch für Bert.
Anzeige
AW: farbe von label mit mouseover ändern
16.05.2005 16:52:51
label
kann ich dir sagen: die labels befinden sich an verschiedenen stellen auf einem
tabellenblatt,und mit einem label drunter hätte ich wohl keinen zugriff auf die zellen...
AW: farbe von label mit mouseover ändern
16.05.2005 16:57:06
label
Hallo Manfred,
von Tabelle Stand nichts in Deinen Beiträgen.
Gruß Hajo
Das Forum lebt auch von den Rückmeldungen.

"Wer Rechtschreibfehler findet, darf sie behalten!"
Dies gilt auch für Bert.
Anzeige
AW: farbe von label mit mouseover ändern
16.05.2005 16:51:58
label
Hi, Label wo, Tabelle oder userform?
mfg Georg
AW: farbe von label mit mouseover ändern
16.05.2005 17:04:29
label

Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If X > 2 And Y > 2 And X < Label1.Width - 2 And Y < Label1.Height - 2 Then
Label1.BackColor = 255
Else
Label1.BackColor = &H80000005
End If
End Sub

mfg Bert
Anzeige
Danke, habe ich auchgesucht! oT
16.05.2005 18:00:15
Horst
oT
;
Anzeige

Infobox / Tutorial

Farbe von Label mit Mouseover ändern in Excel


Schritt-für-Schritt-Anleitung

Um die Farbe eines Labels in Excel beim Mouseover zu ändern, kannst du den folgenden VBA-Code verwenden. Dieser Code sorgt dafür, dass das Label seine Farbe ändert, wenn der Mauszeiger darüber schwebt, und beim Verlassen wieder die ursprüngliche Farbe annimmt.

  1. Öffne die Excel-Datei und gehe zu Entwicklertools.

  2. Klicke auf Visual Basic, um den VBA-Editor zu öffnen.

  3. Füge ein neues UserForm hinzu oder wähle das bestehende UserForm aus.

  4. Füge ein Label zu deinem UserForm hinzu.

  5. Klicke mit der rechten Maustaste auf das Label und wähle Code anzeigen.

  6. Füge den folgenden Code ein:

    Private Sub Label1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
       If X > 2 And Y > 2 And X < Label1.Width - 2 And Y < Label1.Height - 2 Then
           Label1.BackColor = 255 ' Ändert die Farbe beim Mouseover
       Else
           Label1.BackColor = &H80000005 ' Setzt die ursprüngliche Farbe zurück
       End If
    End Sub
  7. Schließe den VBA-Editor und teste das UserForm.

Mit diesem Code kannst du die Excel-Cursor-Farbe ändern und den Color-Change-Effekt beim Mouseover auf Labels erreichen.


Häufige Fehler und Lösungen

  • Problem: Das Label behält die neue Farbe, wenn die Maus es verlässt.

    • Lösung: Stelle sicher, dass im Else-Teil des Codes die ursprüngliche Farbe richtig gesetzt ist, wie im obigen Beispiel gezeigt.
  • Problem: Der Code funktioniert nicht, wenn mehrere Labels auf dem Blatt sind.

    • Lösung: Achte darauf, dass jeder Label den spezifischen Code hat, oder du kannst eine Schleife implementieren, um alle Labels zu überprüfen.

Alternative Methoden

Falls du mehrere Labels hast und ein einfaches VBA-Skript nicht ausreicht, kannst du folgende Ansätze in Betracht ziehen:

  • Shape-Objekte verwenden: Anstelle von Labels kannst du Shapes verwenden, die ähnliche Mouseover-Effekte unterstützen.
  • Formularsteuerelemente: Verwende Formularsteuerelemente, die mehr Interaktivität bieten und einfacher zu handhaben sind.

Praktische Beispiele

Hier sind zwei praktische Beispiele, wie du den Mouseover-Effekt für mehrere Labels umsetzen kannst:

  1. Beispiel mit mehreren Labels:

    Private Sub Label1_MouseMove(...)
       ' Ähnlicher Code wie oben für Label1
    End Sub
    
    Private Sub Label2_MouseMove(...)
       ' Ähnlicher Code für Label2
    End Sub
  2. Beispiel mit Shapes:

    Private Sub Shape1_MouseMove(...)
       Shape1.Fill.ForeColor.RGB = RGB(255, 0, 0) ' Rot
    End Sub
    
    Private Sub Shape1_MouseLeave(...)
       Shape1.Fill.ForeColor.RGB = RGB(0, 0, 255) ' Blau
    End Sub

Tipps für Profis

  • Nutze die MouseLeave-Ereignisse, um einen noch flüssigeren Übergang zwischen den Farben zu erzielen.
  • Experimentiere mit RGB-Farbcodes, um benutzerdefinierte Farben zu erstellen.
  • Erstelle eine Funktion, die die Farbe basierend auf einem Parameter ändert, um den Code wartungsfreundlicher zu gestalten.

FAQ: Häufige Fragen

1. Frage
Wie kann ich die Hintergrundfarbe eines Labels ändern, wenn ich mit der Maus darüber fahre?
Antwort: Du kannst dies erreichen, indem du den MouseMove-Ereignis-Handler verwendest, wie im obigen Code gezeigt.

2. Frage
Funktioniert dieser Code auch in Excel 365?
Antwort: Ja, der Code sollte in Excel 365 sowie in älteren Versionen wie Excel 2003 funktionieren, solange die VBA-Umgebung unterstützt wird.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige