AW: Ein Mousedown-Ereignis bei mehreren TB
18.09.2020 13:16:37
Daniel
Hi
für Checker gibt's wie von Neupumuk gezeigt die sog. Klassenprogrammierung.
Wer die nicht checkt (so wie ich), kann sich mit folgendem Workaround behelfen:
1. man schreibt den Ablauf, der im MouseDown passieren soll in ein eigenes Makro im Modul der Userform und verwendet dabei für die TextBox einen Übergabeparameter vom Typ "Control" und ggf noch X und Y als Single, bei Bedarf auch den Button
2. dann erstellt man für jede TextBox das MouseDown-Event, in diesem reicht jetzt aber eine Zeile aus, in welcher man nur das entsprechende Makro aufruft und die Übergabeparamter angibt:
Beispiel
Private Sub TextboxMouseDown(tb as Control, x as single, y as single)
Msgbox tb.Name & " X: " & x & " - Y: " & y
end Sub
Private Sub TextBox1_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As _
Single, ByVal Y As Single)
Call TextboxMouseDown(Textbox1, X, Y)
End Sub
Private Sub TextBox2_MouseDown(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As _
Single, ByVal Y As Single)
Call TextboxMouseDown(Textbox2, X, Y)
End Sub
usw
sind zwar immer noch viele Makros, aber die meisten bestehen ja nur aus einer Zeile und können leicht mit CopyPaste vervielfacht werden.
Gruß Daniel