Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1512to1516
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

Mit MouseMove, Bild und Opt-Button zeigen

Mit MouseMove, Bild und Opt-Button zeigen
04.09.2016 14:12:08
Dieter(Drummer)

Guten Tag Spezialisten.
Mit gestriger Hilfe von Nepumuk - dafür nochmal danke - und einem Code aus dem Internet, kann im einer Userform mit MoseMove ein Bild und ein Optionsbutton angezeigt werden. Das Makro, das auch den Optionsbutton1 mit in MouseMove einbindet, habe ich um diese Option im Code erweitert und funktioniert auch. Das Bild kommt über Image-Control aus Tabelle2.
Meine Frage und Bitte, ob das Makro "UserForm_MouseMove" noch gekürzt werden kann, damit nicht der Bereich "opt1" zusätzlich separat eingefügt werden muss. Evtl. möchte ich auch noch weitere Opt.buttons etc. einbinden. Meine Beispieldate ist leider zu groß für Download, deshalb hier der Code, der gekürzt werden soll/könnte:

'Aus: http://vba1.de/vba/ _
118userform_bild_anzeigen.php
Private Sub UserForm_MouseMove(ByVal Button As Integer, _
ByVal Shift As Integer, _
ByVal X As Single, _
ByVal Y As Single)
'für jede Bildgröße:
If X > Me.Image1.Left And _
X < Me.Image1.Left + Me.Image1.Width And _
Y > Me.Image1.Top And _
Y < Me.Image1.Top + Me.Image1.Height Then
Me.Image1.Visible = True
Else
Me.Image1.Visible = False
End If
'Mx eingefügt: Nur wenn "opt1" auch unsichtbar sein soll, aber mit Maus sichtbar
If X > Me.Opt1.Left And _
X < Me.Opt1.Left + Me.Opt1.Width And _
Y > Me.Opt1.Top And _
Y < Me.Opt1.Top + Me.Opt1.Height Then
Me.Opt1.Visible = True
Else
Me.Opt1.Visible = False
End If
End Sub
Danke für evtl. Hilfe.
Gruß, Dieter(Drummer)

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

Betreff
Datum
Anwender
Anzeige
AW: Mit MouseMove, Bild und Opt-Button zeigen
04.09.2016 16:11:33
Mullit
Hallo,
könntest Du so machen:
Option Explicit

Private Sub UserForm_MouseMove(ByVal Button As Integer, _
                               ByVal Shift As Integer, _
                               ByVal X As Single, _
                               ByVal Y As Single)
Dim avntControlArray() As Variant
Dim ialngIndex As Long
avntControlArray = Array(Image1, Opt1, Opt2, Opt3) '// Array bei Bedarf ergänzen.... 
For ialngIndex = 0 To Ubound(avntControlArray)
   With avntControlArray(ialngIndex)
       If X > .Left And X < .Left + .Width And _
         Y > .Top And Y < .Top + .Height Then
          .Visible = True
       Else
          .Visible = False
       End If
   End With
Next
End Sub


VBA/HTML - CodeConverter für Office-Foren
AddIn für Excel/Word 2000-2010 - komplett in VBA geschrieben von Lukas Mosimann
Projektbetreuung durch mumpel



Code erstellt und getestet in Office 14

Gruß, Mullit
Anzeige
AW: Danke Mullit ...
04.09.2016 16:34:47
Dieter(Drummer)
... ich bin begeistert, eine perfekt funktionierende Lösung mit gekürztem Code.
Noch einen schönen Sonntag und DANKE. Hier meine fertige Testdatei:
https://www.herber.de/bbs/user/108011.xlsm
Gruß, Dieter(Drummer)
Prima, freut mich....
04.09.2016 17:24:16
Mullit
...Dieter, Danke für die Rückmeldung...
Gruß, Mullit

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige