Hello, I tried this Application.Caller function but it returned not a string it returned a variant object. So I don't know how to get the button from the variant. I create the button with Set MenuItem = Menu2.Controls.Add(Type:=msoControlButton) MenuItem.Caption = aSheet.Cells(row, col_level3).text MenuItem.OnAction = "FilterButtonClick" & CStr(row)
And the onAction macro is then Sub FilterButtonClick9() Dim aObject As Variant Dim hString As String aObject = Application.Caller hString = TypeName(aObject) ' FilterButtonClick (9) End Sub It's somehow strange that according on-line documentation the function never returns a variant. Regards Erwin -- ---------------------------------------------------------------------------------- Some important links for excel users: 1. Follow us on TWITTER for tips tricks and links : http://twitter.com/exceldailytip 2. Join our Facebook Group @ http://www.facebook.com/group.php?gid=287779555678 3. Excel tutorials at http://www.excel-macros.blogspot.com 4. Learn VBA Macros at http://www.quickvba.blogspot.com 5. Excel Tips and Tricks at http://exceldailytip.blogspot.com To post to this group, send email to excel-macros@googlegroups.com <><><><><><><><><><><><><><><><><><><><><><> HELP US GROW !! We reach over 6,800 subscribers worldwide and receive many nice notes about the learning and support from the group.Let friends and co-workers know they can subscribe to group at http://groups.google.com/group/excel-macros/subscribe