Avatar billede mira96ac Novice
08. marts 2007 - 22:54 Der er 10 kommentarer og
1 løsning

Link i egen excel menu

Hejsa

Jeg har lavet mit eget menupunkt i Excel (ved siden af filer, rediger m.v.) (den er lavet via højreklik på menuer, tilpas, ny menu osv)-(ikke vba)

Hvordan får jeg indsat en henvisning til f.eks. en excel skabelon som skal åbnes ved tryk på et af under punkterne i menuen, samt hvor definerer jeg genvejstaster.

Menuen er lavet som en xla-fil og placeret i programmer/microsoft office/xlstart/ - hvis det betyder noget.
Avatar billede mira96ac Novice
09. marts 2007 - 09:59 #1
Hvorfor kommer min menu ikke frem når jeg tager min xla-fil og flytter til en anden computer og putter i samme bibliotek ?
Avatar billede excelent Ekspert
09. marts 2007 - 11:31 #2
prøv evt put i en af følgende mapper

Mappen Bibltek eller en af undermapperne i mappen Microsoft Office/Office10.

Mappen Documents and Settings/<brugernavn>/Application Data/Microsoft/AddIns.
Avatar billede mira96ac Novice
09. marts 2007 - 11:46 #3
Det virker ikke

Det er ligesom om at min hjemmebyggede menu kun følger den excel jeg har bygget den på og ikke følger med xla-filen.

Skal man bruge vba i stedet for ?
Avatar billede excelent Ekspert
09. marts 2007 - 13:22 #4
har du prøvet Funktioner > Tilføjelsesprogrammer
Avatar billede mira96ac Novice
09. marts 2007 - 17:08 #5
Ja

Det kunne jeg heller ikke umiddelbart få til at virke når jeg laver mit menupunkt på denne måde...
Avatar billede mira96ac Novice
09. marts 2007 - 18:10 #6
Jeg har fundet denne vba-kode

Jeg kan bare ikke finde ud af hvordan jeg laver flere underpunkter, og subunderpunkter til underpunkterne.

Samt hvorledes jeg definere de enkelte punkters links. (de skal sådan set alle være til andre excel ark)

Koden:

Option Explicit


Dim NewMenuItem As CommandBarControl

Const MenuCaption = "NyMenu"
Const UnderMenuCaption = "NyUndermenu"

Public Sub NyMenu()
    Dim bMenuExists As Boolean
    Dim ctrl1 As CommandBarButton
    Dim mnuNyUndermenuLocal As CommandBarButton
    Dim MenuItem As CommandBarControl
    Dim LocalMenuItem As CommandBarControl
    Dim MenuBar As CommandBar
    Dim strPreKode As String

    Set MenuBar = Application.CommandBars.ActiveMenuBar
    bMenuExists = False

    MenuBar.Reset
   
    For Each MenuItem In MenuBar.Controls
        If MenuItem.Caption = MenuCaption Then
            bMenuExists = True
            Set LocalMenuItem = MenuItem
            Set mnuNyUndermenuLocal = MenuItem.CommandBar.Controls(UnderMenuCaption)
        End If
    Next MenuItem
   
    If Not bMenuExists Then
        Set LocalMenuItem = MenuBar.Controls.Add(Type:=msoControlPopup, Temporary:=True)
        LocalMenuItem.Move Before:=11
        LocalMenuItem.Caption = MenuCaption
        Set ctrl1 = LocalMenuItem.CommandBar.Controls.Add(Type:=msoControlButton, ID:=1, Temporary:=True)
        With ctrl1
          .Caption = UnderMenuCaption
          .Style = msoButtonCaption
          .OnAction = "Navnetpådinmakro"
        End With
    Set NewMenuItem = LocalMenuItem
       
        If CheckTemplate Then
        NewMenuItem.Enabled = False
    End If
       
End If
   
End Sub

Public Sub SletMenu()
    If Not NewMenuItem Is Nothing Then
        On Error Resume Next
        NewMenuItem.Delete
        On Error GoTo 0
        Set NewMenuItem = Nothing
    End If
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    SletMenu
End Sub

Private Sub Workbook_Activate()
    NyMenu
End Sub

Private Sub Workbook_Deactivate()
    SletMenu
End Sub

Private Sub Workbook_Open()
    NyMenu
End Sub

Private Function CheckTemplate() As Boolean
    Dim bResult As Boolean
    bResult = False
    If UCase(Application.ActiveWorkbook.Name) = "TEMPLATE.XLS" Then
        bResult = True
    End If
    CheckTemplate = bResult
End Function

Public Sub TrigMenu(shtWorkSheet As Worksheet)
    Workbook_SheetActivate shtWorkSheet
End Sub

Private Sub Workbook_SheetActivate(ByVal Sh As Object)
    NyMenu
End Sub
Avatar billede excelent Ekspert
09. marts 2007 - 18:46 #7
prøv kør makrooptage imens du opretter menuer/undermenuer
så får du en kode du nok kan arbejde videre ud fra

Sub Makro1()
Application.CommandBars("Window").Controls.Add Type:=msoControlPopup, Before:=8
Application.CommandBars("Brugerdefineret genvejsmenu 873864841").Controls.Add Type:=msoControlPopup, Before:=1
Application.CommandBars("Brugerdefineret genvejsmenu 873864841").Controls.Add Type:=msoControlButton, ID:=18, Before:=1
Application.CommandBars("Brugerdefineret genvejsmenu 873864841").Controls.Add Type:=msoControlButton, ID:=23, Before:=2
Application.CommandBars("Brugerdefineret genvejsmenu 873864841").Controls.Add Type:=msoControlButton, ID:=3, Before:=3
End Sub
Avatar billede mira96ac Novice
10. marts 2007 - 21:09 #8
Point til Excelent for at hjælpe

Jeg har startet en nyt spørgsmål med baggrund i dette

http://www.eksperten.dk/spm/767240
Avatar billede mira96ac Novice
10. marts 2007 - 21:09 #9
Kom bare med et svar Excelent
Avatar billede excelent Ekspert
10. marts 2007 - 23:00 #10
tag dem bare selv
du løste problemet
Avatar billede mira96ac Novice
10. marts 2007 - 23:12 #11
Jeg bukker og takker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester