comment for a shape?

merlin777

Well-known Member
Joined
Aug 29, 2009
Messages
1,397
Office Version
  1. 2007
I have a shape which is a button that runs a macro but i want to add a comment to explain what it does before the button is clicked on.

Is it possible to have a text message pop up when you mouseover a shape?
 
Hi

Since it seems there's no perfect solution ... and you want to tie it to the shape ... maybe you have to think of not-so-perfect solutions.


Still very easy to implement

1 - when the user clicks on the shape a msgbox is displayed with the help/warning text and the user then presses "execute" or "cancel".
This makes sure that the users always knows the implications of running this code.

I don't think it's a bad idea to always present a warning message if the code makes serious changes.


or

2 - the user can click on part of the shape if help is needed. For ex. the left part or the top left corner is "display help" and the rest is "execute"

Very easy to implement.
You just need to add a second shape for the help and group them (since they overlap, don't forget to send the big one to the back before grouping). This second small shape, that is on top of the main one, can have the text "Help" or "Info" or it can be one of the clipart help questions marks, etc.


Both options still look familiar to the user since the main shape is the same.

Do they make sense in your case?
 
Upvote 0

Excel Facts

VLOOKUP to Left?
Use =VLOOKUP(A2,CHOOSE({1,2},$Z$1:$Z$99,$Y$1:$Y$99),2,False) to lookup Y values to left of Z values.
I like both of those. I think I might use them both in different contexts. One errs towards 'what the heck does this thing do' and the other is more of a 'are you sure you want to do that?'

The only query i have is with the 2nd option. If i insert a ? clipart or gif for someone to click on, how can i bring up a message box from that? I could use a hyperlink to another sheet or cell somewhere but then the user will have to find their way back again.
 
Upvote 0
The only query i have is with the 2nd option. If i insert a ? clipart or gif for someone to click on, how can i bring up a message box from that? I could use a hyperlink to another sheet or cell somewhere but then the user will have to find their way back again.


I did not use any hyperlink, just the shape's macro.

I did this quick test:

- I added 2 rectangles, first one big and then one small that I placed on the top left corner of the big one.

- I assigned a macro to the bigger shape, a msgbox that displays "Big", and another macro to the smaller, a msgbox that displays "Small"

- I sent the big shape to the back and grouped the 2


The test went well. Since the smaller shape is on top of the bigger one
- when I click on the smaller shape it's macro is activated and I get the "Small" message
- when I click on the bigger shape outside the smaller one, the other macro is activated and I get the "Big" message

I used in the smaller shape the text "Help" at first but then I cleared it and filled the shape with a clipart for help.

Please test.
 
Upvote 0
While I don't have a solution to your specific question, here is the solution I have come up with. My Excel applications have a lot going on with them and are distributed widely. In the upper left corner I use a Show Help button (shape not an active xl) once this is clicked a host of other shapes (callouts to be specific) are then displayed. The text on the help button changes from Show Help to Hide Help. Another click on the bottom hides all of the help shapes.
When creating the shapes I simply group them together and assign a name such as Help Group. Then thru VBA I simply set the visibility to True / False.
I hope this helps
 
Upvote 0
Activex is out because this will be used on a corporate network where they don't like that kind of thing.

I'm intrigued by this - how would they even know what kind of button you had used? Do they forbid you to use userforms?
 
Upvote 0
i'm told that activex controls are disabled for security reasons. I don't have access to their system so I can't check myself.

Could I send one of my users a simple sheet with just an activex control to see if it works?
 
Upvote 0
I have a shape which is a button that runs a macro but i want to add a comment to explain what it does before the button is clicked on.

Is it possible to have a text message pop up when you mouseover a shape?

Something else you might want to take into consideration on this. While an automatic help pop-up might be very useful for a user the first few times they use a feature, it can be downright annoying after that. Once they understand the functionality, a user wants a minimal amount of steps and automated pop-ups to achieve their goal, so consider using an option help feature that they can click when​ they are looking for help.
 
Upvote 0
Thanks, Raustin. That would give my users what they need. How do you place the callouts - are they attached to the shapes so they move when the shapes do?

Please could you give me an example of your code.

Last question - do you show the callouts for individual sheets or the whole workbook? It occurred to me you could show them on sheets to make things simpler because you'll only see them on the current sheet.
 
Upvote 0
You are very welcome. Here is how i did it.
I created a shape (i like rounded corner rectangle-Orange colored for help) Then i assigned a specific (hidden) cell to that shape. This cell I typed in "Show Help". Once this is done the text on the button automatically shows "Show Help"
Then i created as many callouts (which are also shapes in a worksheet), and i wrote whatever i wanted in them and positions then wherever i wanted. I then selected all of these callouts and Grouped them together. I then named this group "HelpPopUpsGrp". This allows us to show/ hide the entire group within the code. Then i created one macro for each screen i wanted to have this Show Help feature. The code for two of those sheets is below:
Code:
Sub ShowHelpInvItems()If Sheet7.Range("J1").Value = "Show Help" Then
Sheet7.Shapes("HelpPopUpsGrp").Visible = True
Sheet7.Range("J1").Value = "Hide Help"
Else:
Sheet7.Shapes("HelpPopUpsGrp").Visible = False
Sheet7.Range("J1").Value = "Show Help"
End If
End Sub


Sub ShowHelpSetupScrn()
If Sheet1.Range("AF2").Value = "Show Help" Then
Sheet1.Shapes("HelpPopUpsGrp").Visible = True
Sheet1.Range("AF2").Value = "Hide Help"
Else:
Sheet1.Shapes("HelpPopUpsGrp").Visible = False
Sheet1.Range("AF2").Value = "Show Help"
End If
End Sub
Once complete a simple, single button click will show/ hide the help shapes for the entire sheet. End result when the help is viewed looks something like this:
With Help Displayed: https://www.dropbox.com/s/6ttgznoazkh5ldc/HelpSample.png?dl=0
With Help Hidden: https://www.dropbox.com/s/oxzdkvwxj5q8kf8/ShapesHidden.jpg?dl=0

As I look at the screenshot i realize i not only added callout shapes to the group but i added a picture of a "Right click" option as well. so Pictures as well can be a part of this group.
 
Last edited:
Upvote 0

Forum statistics

Threads
1,215,086
Messages
6,123,033
Members
449,092
Latest member
ikke

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top