Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
can anyone tell me how to make the picture box in the excel form be
dragable by using VBA programming? |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
On Jan 27, 8:41 pm, wrote:
can anyone tell me how to make the picture box in the excel form be dragable by using VBA programming? youu, I'm not sure you can do that because re-positioning and/or resizing a form require it to be in edit mode. You could collect Left and Top positions of the image object from the user to adjust it's position on the form. But that would be clumsy. Whenever anyone asks about these more exotic kinds of VBA functionality, my first question is, "What value are you trying to provide to the user?" Followed by, "Ts what you are trying to do value-added from your and the user's perspective? And then step back and see if you could deliver essentially the same value from an alternative solution strategy or else try to persuade the customer to reduce his requirements. (Time is money.) Good Luck. SteveM P.S. to youu and anybody else who reads this thread, google "Occams Razor". Read a few things about that and take note... |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
On Jan 28, 9:56*am, SteveM wrote:
On Jan 27, 8:41 pm, wrote: can anyone tell me how to make the picture box in the excel form be dragable by using VBA programming? youu, I'm not sure you can do that because re-positioning and/or resizing a form require it to be in edit mode. *You could collect Left and Top positions of the image object from the user to adjust it's position on the form. *But that would be clumsy. Whenever anyone asks about these more exotic kinds of VBA functionality, my first question is, "What value are you trying to provide to the user?" *Followed by, "Ts what you are trying to do value-added from your and the user's perspective? *And then step back and see if you could deliver essentially the same value from an alternative solution strategy or else try to persuade the customer to reduce his requirements. *(Time is money.) Good Luck. SteveM P.S. to youu and anybody else who reads this thread, google "Occams Razor". *Read a few things about that and take note... thank you very much |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
can anyone tell me how to make the picture box in the excel
form be dragable by using VBA programming? You said "picture box", but I am going to assume you meant ImageBox. Place an ImageBox (leave the default name of Image1) on the form. Copy/paste the code below my signature into the UserForm's code window, run the project and press Shift+<LeftMouseButton to drag the ImageBox around the form. Rick Private OffsetX As Long, OffsetY As Long Private Moving As Boolean Private Sub Image1_MouseDown(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) If Button = 1 And Shift = 1 Then OffsetX = X OffsetY = Y Moving = True End If End Sub Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) If Moving Then With Image1 .Move .Left + X - OffsetX, .Top + Y - OffsetY End With End If End Sub Private Sub Image1_MouseUp(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) Moving = False End Sub |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
I'm not sure you can do that because re-positioning and/or resizing a
form require it to be in edit mode. You could collect Left and Top positions of the image object from the user to adjust it's position on the form. But that would be clumsy. See my response to the OP for a simple method to do what he asked. Rick |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
Rick, Very nice, I will keep this one even though I may never use it. -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware (Excel Add-ins / Excel Programming) "Rick Rothstein (MVP - VB)" wrote in message can anyone tell me how to make the picture box in the excel form be dragable by using VBA programming? You said "picture box", but I am going to assume you meant ImageBox. Place an ImageBox (leave the default name of Image1) on the form. Copy/paste the code below my signature into the UserForm's code window, run the project and press Shift+<LeftMouseButton to drag the ImageBox around the form. Rick Private OffsetX As Long, OffsetY As Long Private Moving As Boolean Private Sub Image1_MouseDown(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) If Button = 1 And Shift = 1 Then OffsetX = X OffsetY = Y Moving = True End If End Sub Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) If Moving Then With Image1 .Move .Left + X - OffsetX, .Top + Y - OffsetY End With End If End Sub Private Sub Image1_MouseUp(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) Moving = False End Sub |
#7
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
Very nice,
Thank you! I will keep this one even though I may never use it. LOL By the way, the procedure I posted is not restricted to ImageBox'es only; you can use it with any control having those three Mouse events available. For example, put a ListBox on the UserForm, copy/paste the code I posted earlier, click Edit/Replace (or key in Ctrl+H) and replace all occurrence of Image1 with ListBox1. Now, run the project and Shift+LeftMouseClick over the ListBox and drag it around instead. Rick -- Jim Cone San Francisco, USA http://www.realezsites.com/bus/primitivesoftware (Excel Add-ins / Excel Programming) "Rick Rothstein (MVP - VB)" wrote in message can anyone tell me how to make the picture box in the excel form be dragable by using VBA programming? You said "picture box", but I am going to assume you meant ImageBox. Place an ImageBox (leave the default name of Image1) on the form. Copy/paste the code below my signature into the UserForm's code window, run the project and press Shift+<LeftMouseButton to drag the ImageBox around the form. Rick Private OffsetX As Long, OffsetY As Long Private Moving As Boolean Private Sub Image1_MouseDown(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) If Button = 1 And Shift = 1 Then OffsetX = X OffsetY = Y Moving = True End If End Sub Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) If Moving Then With Image1 .Move .Left + X - OffsetX, .Top + Y - OffsetY End With End If End Sub Private Sub Image1_MouseUp(ByVal Button As Integer, ByVal Shift As _ Integer, ByVal X As Single, ByVal Y As Single) Moving = False End Sub |
#8
Posted to microsoft.public.excel.programming
|
|||
|
|||
Drag picture
Thank you very much! Appreciated that you solved my problem,thank you.
|
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Connect a number to a picture bank and import that picture to exce | Excel Discussion (Misc queries) | |||
how do I insert picture into cell so vlookup can return picture? | Excel Worksheet Functions | |||
insert a picture in to a comment but picture not save on hard disk | Excel Discussion (Misc queries) | |||
Drag and Drop Picture | Excel Discussion (Misc queries) | |||
How to extract a picture from an Excel worksheet into a picture fi | Excel Discussion (Misc queries) |