• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Menu maken

Status
Niet open voor verdere reacties.

linkav

Gebruiker
Lid geworden
13 jun 2007
Berichten
465
Beste,

Ik wil een excel-bestand dat meerdere macro's bevat.

Graag had ik een tabblad toegevoegd dat als menu moet gaan fungeren. Ik dacht in een cel een omschrijving te zetten en dan aan deze omschrijving een hyperlink te leggen naar een macro. Maar dat kan blijkbaar niet.

Kan ik dit op een andere manier oplossen?
 
Zet dan een button voor elke macro op je menutabblad.
 
Kan ik dan vanuit vba de tekst op een knop wijzigen? Ik wil namelijk afhankelijk van de gebruiker een ander menu samenstellen, dus de eerste knop kan bij de ene persoon iets anders zijn dan bij een andere.
 
Ja, dat kan.
 
Plaats een voorbeeld documentje. Er zijn meerdere mogelijkheden en zonder voorbeeld wordt het speculeren.
 
Edmoor,

Hierbij een voorbeeld.
Het is de bedoeling om een variabel menu op te stellen (iedere gebruiker zijn menukeuzes).

Op tabblad 'DashboardData' zijn per gebruiker de menukeuzes vastgelegd.
Het is de bedoeling om bij het openen van het excel-bestand te kijken wie ingelogd is en afhankelijk van de gebruiker het dashboard samengesteld wordt.
Het moet dan ook mogelijk zijn om knoppen toe te voegen in vba code en knoppen te verwijderen of invisible te zetten.

Kan je hiermee iets?
 

Bijlagen

Geef eerst je knoppen een correcte naam, bijvoorbeeld Knop1 t/m Knop6.
Daarna kan je dit doen:
Code:
Sub MenuStart()
    Dim i As Integer
    For i = 1 To 6
        Call SetButtonText("Knop" & i, "voorbeeld" & i)
    Next i
End Sub

Sub SetButtonText(sButton As String, sText As String)
    Sheets("Dashboard").Buttons(sButton).Caption = sText
End Sub

Je kan dan zelf wel verzinnen hoe je dat met de gegevens uit DashboardData moet doen.
 
Laatst bewerkt:
Klik met rechts op een knop en pas de naam dan aan in het naamvak van Excel.
Dus daar waar je ook een bereik een naam kan geven.
 
Hallo,

Nog even verder borduren op dit menu.
Ik heb een tabblad met user/knopnr/tekst op knop/macro. Bij het openen van het excel-bestand wordt gekeken welke gebruiker ingelogd is en afhankelijk van de gebruiker wordt de tekst op de knoppen gezet. Ik zou de naam van de macro in een variabele willen steken en als op een knop geklikt wordt zou de macro, waarvan de naam in een variabele staat, moeten opgestart worden. Iets in de trend van "call tmpBut1Macro". Iemand een oplossing?
 
Wat op de knop staat maakt niet uit. De macro die aan de knop is gekoppeld zal worden gestart.
 
@snb,

Inhoudsloze (off-topic) reacties zijn op helpmij.nl niet gewenst. Bij deze het verzoek deze reacties achterwegen te laten.
Meer informatie hierover kunt u terugvinden in de huisregels.

M.v.g, en een prettige dag verder
Mastermindzh

 
Inderdaad... maar in die macro wordt gekeken welke gebruiker het is en wordt op het tabblad met menukeuzes de macro-naam opgehaald die opgestart moet worden. Hoe kan ik die macro nu laten uitvoeren?

Ik wil bekomen dat er voor iedere gebruiker (of gebruikergroep) een menu komt. In een tabblad heb ik staan gebruiker/knopnr/op te starten macro.
 
Bij mij werkt dit goed als de betreffende macro's in een Module staan:
Code:
Sub MacroAanKnop()
    Dim MenuMacro As String
    
    MenuMacro = "MenuVan" & Environ("USERNAME")
    Application.Run MenuMacro
End Sub

Sub MenuVanEd()
    MsgBox "Menu van Ed"
End Sub
 
Inhoudsloze (off-topic) reacties zijn op helpmij.nl niet gewenst. Bij deze het verzoek deze reacties achterwegen te laten.

Om te menen hiervoor @snb terecht te moeten wijzen vind ik er toch wel over.
Mvgr. prettige avond nog.

Cobbe
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan