Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Mouseover Userform

Mouseover Userform
25.08.2008 20:51:00
SteffenS
Hallo Zusammen,
gibt es in einer Userform die Möglichkeit eine Aktion auszuführen wenn ich mit der Maus über eine Schaltfläche fahre. Ich möchte dann gern ein weiteres Element (Textfeld) sichtbar machen.
Danke im Voraus.
MFG
Steffen Schmerler
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mouseover Userform
25.08.2008 20:58:00
Daniel
Hi
ja, geht.
dafür gibt es das MOUSE-MOVE-Event.
du siehst im VBA-Edtior über dem Codefenster 2 comboboxen.
im linken wählst du aus den vorhandenen Objekten eines aus, im rechten bekommst du dann die für dieses Objekt vorhandenen Events angezeigt.
wenn du eines der Events auswählst, wird gleich ein passendes EVENT-Makro angelegt, in das du deinen Code nur noch einfügen musst.
Gruß, Daniel
Anzeige
Cool
25.08.2008 21:28:00
SteffenS
Vielen Dank Das ist ja einfach :-)))
Steffen
;
Anzeige
Anzeige

Infobox / Tutorial

Mouseover-Funktion in einer Excel Userform erstellen


Schritt-für-Schritt-Anleitung

Um einen Mouseover-Effekt in einer Excel Userform zu implementieren, kannst du das MouseMove-Event verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor in Excel zu starten.
  2. Erstelle eine Userform:

    • Füge eine neue Userform hinzu, indem du im Projekt-Explorer mit der rechten Maustaste auf „VBAProject“ klickst und „Userform einfügen“ wählst.
  3. Füge eine Schaltfläche hinzu:

    • Ziehe eine Schaltfläche (CommandButton) auf die Userform.
  4. Füge ein Textfeld hinzu:

    • Ziehe ein Textfeld (TextBox) auf die Userform, das standardmäßig nicht sichtbar sein sollte.
  5. Code für das MouseMove-Event:

    • Klicke auf die Schaltfläche und wähle im Dropdown-Menü oben links das MouseMove-Event aus.
    • Es wird ein neues Makro erstellt. Füge den folgenden Code ein:
    Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
       TextBox1.Visible = True
       TextBox1.Text = "Hier ist der Mouseover Text!"
    End Sub
  6. Code für das MouseLeave-Event (optional):

    • Um das Textfeld auszublenden, wenn die Maus die Schaltfläche verlässt, füge diesen Code in das MouseLeave-Event ein:
    Private Sub CommandButton1_MouseLeave()
       TextBox1.Visible = False
    End Sub
  7. Teste die Userform:

    • Starte die Userform mit F5 und bewege die Maus über die Schaltfläche, um den Mouseover-Effekt zu sehen.

Häufige Fehler und Lösungen

  • Textfeld wird nicht angezeigt:

    • Stelle sicher, dass die Sichtbarkeit des Textfelds im Code korrekt gesetzt ist (TextBox1.Visible = True).
  • MouseMove-Event funktioniert nicht:

    • Überprüfe, ob du das richtige Objekt (Schaltfläche) für das MouseMove-Event ausgewählt hast.
  • VBA-Editor zeigt keine Events an:

    • Vergewissere dich, dass du das richtige Objekt im linken Dropdown-Menü ausgewählt hast.

Alternative Methoden

Eine alternative Methode für die Anzeige von Informationen beim Hover ist die Verwendung von Tooltips. Diese können über die ControlTipText-Eigenschaft in den Eigenschaften der Steuerelemente gesetzt werden. Dies ist jedoch nicht so flexibel wie das MouseMove-Event.


Praktische Beispiele

Hier sind einige Beispiele, wie du den mouseover-Effekt in Excel nutzen kannst:

  1. Hilfetexte anzeigen: Zeige zusätzliche Informationen oder Hinweise zu einem bestimmten Steuerelement an.
  2. Dynamische Inhalte: Ändere den Inhalt eines Labels oder Textfelds basierend auf der Benutzerinteraktion.
Private Sub CommandButton1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Label1.Caption = "Du hast die Schaltfläche berührt!"
End Sub

Tipps für Profis

  • Experimentiere mit verschiedenen Steuerelementen und kombiniere mehrere MouseMove-Events für komplexere Interaktionen.
  • Verwende die Application.ScreenUpdating-Eigenschaft, um die Bildschirmaktualisierung während der Mouseover-Effekte zu steuern, sodass die Benutzererfahrung flüssiger wird.

FAQ: Häufige Fragen

1. Kann ich mehrere Steuerelemente mit Mouseover-Effekten erstellen?
Ja, du kannst für jedes Steuerelement ein eigenes MouseMove-Event hinzufügen und den entsprechenden Code anpassen.

2. Welche Excel-Version benötige ich für Mouseover in Userforms?
Die Verwendung von Mouseover-Effekten ist in Excel VBA ab Version 2007 möglich.

3. Gibt es eine Möglichkeit, den Text beim Hover dynamisch zu ändern?
Ja, du kannst den Text in einem Textfeld oder Label während des MouseMove-Events anpassen, indem du den Text oder Caption der Steuerelemente änderst.

4. Ist es möglich, Mouseover-Events in Excel-Tabellen zu verwenden?
Mouseover-Events sind in Tabellen nicht direkt verfügbar, aber du kannst ähnliche Effekte durch Verwendung von Formeln und bedingter Formatierung erreichen.

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