![]() |
"what triggered the event"
I need command buttons on a spreadsheet to change color on
the mouse_down and then back on the mouse_up events. But rather the writing the code for the mousedown/up event for each individual button, I want to write two subs (one for mouse_down and other for mouse_up) that that will be called by the buttons e.g. Private Sub Button_Mouse_Down() "WhichButtonCalledMe".backColor = RGB(255,0,0) End sub Private Sub Button_Mouse_Up() "WhichButtonCalledMe".Backcolor = RGB(0,255,0) End Sub How do I find out what button called the subs? Hope this makes sense to someone out there. |
"what triggered the event"
Hi
This is what Classes do. Insert a class module. Name it MyBtn. Put this code in it: Option Explicit Public WithEvents Btn As MSForms.CommandButton Private Sub Btn_MouseDown(ByVal Button As Integer, _ ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) Btn.BackColor = RGB(255, 0, 0) End Sub Private Sub Btn_MouseUp(ByVal Button As Integer, _ ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single) Btn.BackColor = RGB(0, 255, 0) End Sub Now in your sheet module put this code: Option Explicit Dim B1 As New MyBtn Dim B2 As New MyBtn Dim B3 As New MyBtn Private Sub Worksheet_Activate() Set B1.Btn = Me.CommandButton1 Set B2.Btn = Me.CommandButton2 Set B3.Btn = Me.CommandButton3 End Sub You may have to deactivate/reactivate the sheet before it works properly -Activate probably isn't the best place to assign the class. But it's a demo, I hope it gets you started in the right direction. HTH. Best wishes Harald "Rod Jones" skrev i melding ... I need command buttons on a spreadsheet to change color on the mouse_down and then back on the mouse_up events. But rather the writing the code for the mousedown/up event for each individual button, I want to write two subs (one for mouse_down and other for mouse_up) that that will be called by the buttons e.g. Private Sub Button_Mouse_Down() "WhichButtonCalledMe".backColor = RGB(255,0,0) End sub Private Sub Button_Mouse_Up() "WhichButtonCalledMe".Backcolor = RGB(0,255,0) End Sub How do I find out what button called the subs? Hope this makes sense to someone out there. |
All times are GMT +1. The time now is 06:01 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com