Ver Mensaje Individual
  #7  
Antiguo 28/06/08, 02:11:10
Efasor Efasor is offline
Moderator
 
Usuario desde: jun 2008
Versión de Excel: Excel 2003
Conectado desde: Colombia
Mensajes: 61
Contactar con Efasor a través de MSN
Predeterminado Menu

Mira el menú lo creas con las siguientes instrucciones, te pongo un ejemplo y lo modificas a tu conveniencia:

Lo debes meter en el modulo 'ThisWorkBook'
Código:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
    Dim Menu As Object
    For Each Menu In Application.CommandBars.ActiveMenuBar.Controls
        If Menu.Caption = "Macros" Then
            Menu.Delete
        End If
    Next
End Sub

Private Sub Workbook_Open()
    Dim myMenuBar As Object
    Dim newMenu As Object
    Dim Menu As Object
    Dim ctrl As Object
    
    Set myMenuBar = Application.CommandBars.ActiveMenuBar
    
    'Crea el menu desplegable
    For Each Menu In myMenuBar.Controls
        If Menu.Caption = "Macros" Then
            Exit Sub
        End If
    Next
    
    Set newMenu = myMenuBar.Controls.Add(Type:=msoControlPopup, Temporary:=True)
    newMenu.Caption = "Macros" 'Nombre del Item
    
    '-----------------------------------------
    'Se adiciona un nuevo elemento al menu
    Set ctrl = newMenu.Controls.Add(Type:=msoControlButton)
    ctrl.Caption = "Join Data " 'Nombre del Item
    ctrl.Style = msoButtonCaption
    ctrl.OnAction = "JoinData.JoinData" 'Rutina que se ejecutará
    '----------------------------------------
    
   

End Sub
Bueno aqui "Macros" es el nombre del menu y JoinData.JoinData es el macro que se llama JoinData y esta metido en el modulo del mismo nombre., si por ejemplo el modulo se llamara Modulo1 y el macro M1 seria Modulo1.M1.

Y listo cuando carges el xla aprecerá el menú desde donde podras llamr tus macros....
Responder Con Cita