Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 48
Default Determining what menu item called a macro

I'm creating an xla that will add a custom menu that will be added to the
main menu bar. My hope is to have several of the menu items actually tied to
the same macro which will run (portions of the) code conditionally based on
the calling menu item.

Is there a property to determine what menu item called a routine? If so,
what is it and are there any limitations I should be aware of? Any
additional information would be awesome...i.e., obect/collection information,
etc.

I didn't find much in Excel's help files.
  #2   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 396
Default Determining what menu item called a macro

Hi

You can use the OnAction methode of a menu item, AND pass some parameters
along to a general procedure. I know it can be done since in the past I
already coded something in that spirit.

I just googled:

excel vba onaction parameter

and have a look at these links, and start with the article from MVP Tushar
Mehta.


--
Wigi
http://www.wimgielis.be = Excel/VBA, soccer and music


"Stephen Lloyd" wrote:

I'm creating an xla that will add a custom menu that will be added to the
main menu bar. My hope is to have several of the menu items actually tied to
the same macro which will run (portions of the) code conditionally based on
the calling menu item.

Is there a property to determine what menu item called a routine? If so,
what is it and are there any limitations I should be aware of? Any
additional information would be awesome...i.e., obect/collection information,
etc.

I didn't find much in Excel's help files.

  #3   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 5,939
Default Determining what menu item called a macro

Take a look at application.caller
--
HTH...

Jim Thomlinson


"Stephen Lloyd" wrote:

I'm creating an xla that will add a custom menu that will be added to the
main menu bar. My hope is to have several of the menu items actually tied to
the same macro which will run (portions of the) code conditionally based on
the calling menu item.

Is there a property to determine what menu item called a routine? If so,
what is it and are there any limitations I should be aware of? Any
additional information would be awesome...i.e., obect/collection information,
etc.

I didn't find much in Excel's help files.

  #4   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 48
Default Determining what menu item called a macro

Thank you both for your responses.

Jim, I had looked at application.caller and thought that it would not return
useful information if vba was called from a menu. I will look at it again
though.

Wigi, thank you for your help as well. I've looked at Mehta's stuff before
and found him helpful.

"Jim Thomlinson" wrote:

Take a look at application.caller
--
HTH...

Jim Thomlinson


"Stephen Lloyd" wrote:

I'm creating an xla that will add a custom menu that will be added to the
main menu bar. My hope is to have several of the menu items actually tied to
the same macro which will run (portions of the) code conditionally based on
the calling menu item.

Is there a property to determine what menu item called a routine? If so,
what is it and are there any limitations I should be aware of? Any
additional information would be awesome...i.e., obect/collection information,
etc.

I didn't find much in Excel's help files.

  #5   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Determining what menu item called a macro

I think you want actioncontrol, as in:

msgbox Application.CommandBars.ActionControl.Caption





Stephen Lloyd wrote:

I'm creating an xla that will add a custom menu that will be added to the
main menu bar. My hope is to have several of the menu items actually tied to
the same macro which will run (portions of the) code conditionally based on
the calling menu item.

Is there a property to determine what menu item called a routine? If so,
what is it and are there any limitations I should be aware of? Any
additional information would be awesome...i.e., obect/collection information,
etc.

I didn't find much in Excel's help files.


--

Dave Peterson


  #6   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 48
Default Determining what menu item called a macro

and Dave Peterson comes through on the river. Thank you sir. One follow up
question. Is there any reason for which one should prefer to use any one of
the FaceId, Tag, or Caption properties in lieu of the other two?


"Dave Peterson" wrote:

I think you want actioncontrol, as in:

msgbox Application.CommandBars.ActionControl.Caption





Stephen Lloyd wrote:

I'm creating an xla that will add a custom menu that will be added to the
main menu bar. My hope is to have several of the menu items actually tied to
the same macro which will run (portions of the) code conditionally based on
the calling menu item.

Is there a property to determine what menu item called a routine? If so,
what is it and are there any limitations I should be aware of? Any
additional information would be awesome...i.e., obect/collection information,
etc.

I didn't find much in Excel's help files.


--

Dave Peterson

  #7   Report Post  
Posted to microsoft.public.excel.programming
external usenet poster
 
Posts: 35,218
Default Determining what menu item called a macro

The .tag property is something you can use that is invisible to the user.

I'd use the .tag property.

And if, er, when, you get complaints from the user to change the caption, you
can fix one thing without having to worry about what else you broke.

And if you have lots of controls that do the same kind of thing, you could add
the same tag to each.

(I can't imagine having to remember the cryptic FaceID's <vbg.)

Stephen Lloyd wrote:

and Dave Peterson comes through on the river. Thank you sir. One follow up
question. Is there any reason for which one should prefer to use any one of
the FaceId, Tag, or Caption properties in lieu of the other two?

"Dave Peterson" wrote:

I think you want actioncontrol, as in:

msgbox Application.CommandBars.ActionControl.Caption





Stephen Lloyd wrote:

I'm creating an xla that will add a custom menu that will be added to the
main menu bar. My hope is to have several of the menu items actually tied to
the same macro which will run (portions of the) code conditionally based on
the calling menu item.

Is there a property to determine what menu item called a routine? If so,
what is it and are there any limitations I should be aware of? Any
additional information would be awesome...i.e., obect/collection information,
etc.

I didn't find much in Excel's help files.


--

Dave Peterson


--

Dave Peterson
Reply
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules

Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On


Similar Threads
Thread Thread Starter Forum Replies Last Post
New menu item OnAction can't see macro? Ed Excel Programming 13 January 25th 05 11:27 PM
Using a Custom Function - determining the row that called it Masa Ito Excel Programming 3 October 1st 04 02:49 AM
re-enabling macro under menu item jerry h Excel Programming 1 April 18th 04 12:14 AM
Macro to display a menu item - possible? TonyJeffs Excel Programming 3 November 16th 03 08:38 AM
Determining whether function called by Excel or VBA Ryan Poth[_2_] Excel Programming 3 July 17th 03 05:26 AM


All times are GMT +1. The time now is 07:16 PM.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright ©2004-2024 ExcelBanter.
The comments are property of their posters.
 

About Us

"It's about Microsoft Excel"