Gå til hovedindhold

Hvordan tilføjes brugerdefineret knap til højreklik / kontekstmenuen i Excel?

Som vist nedenfor vises skærmbilleder, har mange mennesker en tendens til at tilføje deres hyppigt anvendte funktioner til Excels højreklikmenu for hurtigt at kunne bruge disse funktioner med kun et klik i fremtiden. Denne artikel taler om at tilføje brugerdefineret kodeknap til højreklikmenuen i Excel.

Føj brugerdefineret knap til kontekstmenuen i Excel med VBA-kode


Føj brugerdefineret knap til kontekstmenuen i Excel med VBA-kode

Antag, at du har oprettet et VBA-script ved navn MyMacro i din Excel, og nu skal du tilføje denne funktion til kontekstmenuen for at køre koden bare ved at klikke på den. Gør som følger.

1. Tryk på andre + F11 taster samtidigt for at åbne Microsoft Visual Basic til applikationer vindue.

2. i Microsoft Visual Basic til applikationer dobbeltklik på vinduet ThisWorkbook til venstre Projekt rude. Og derefter kopiere og indsætte nedenstående VBA-kode i Denne arbejdsbog (kode) vindue.

VBA-kode: Føj brugerdefineret knap til kontekstmenuen i Excel

Private Sub Workbook_Deactivate()
    On Error Resume Next
        With Application
            .CommandBars("Cell").Controls("MyMacro").Delete
        End With
    On Error GoTo 0
End Sub

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
    Dim cmdBtn As CommandBarButton
    On Error Resume Next
        With Application
            .CommandBars("Cell").Controls("MyMacro").Delete
            Set cmdBtn = .CommandBars("Cell").Controls.Add(Temporary:=True)
        End With

        With cmdBtn
           .Caption = "MyMacro"
           .Style = msoButtonCaption
           .OnAction = "MyMacro"
        End With
    On Error GoTo 0
End Sub

Bemærk: I koden skal du udskifte alle "Min Makro" med det makronavn, du har oprettet i din Excel.

3. Tryk på andre + Q taster for at afslutte Microsoft Visual Basic til applikationer vindue.

Nu vender du tilbage til Excel-grænsefladen, efter at du højreklikker på en celle, vil du se den nye knap med det angivne navn tilføjes i højreklikmenuen som vist nedenstående skærmbillede. Klik på knappen for at udløse den tilsvarende makro med det samme.


Relaterede artikler:

Bedste kontorproduktivitetsværktøjer

🤖 Kutools AI Aide: Revolutionér dataanalyse baseret på: Intelligent udførelse   |  Generer kode  |  Opret brugerdefinerede formler  |  Analyser data og generer diagrammer  |  Aktiver Kutools funktioner...
Populære funktioner: Find, fremhæv eller identificer dubletter   |  Slet tomme rækker   |  Kombiner kolonner eller celler uden at miste data   |   Runde uden formel ...
Super opslag: VLookup med flere kriterier    Multiple Value VLookup  |   VOpslag på tværs af flere ark   |   Fuzzy Lookup ....
Avanceret rulleliste: Opret hurtigt rulleliste   |  Afhængig rulleliste   |  Multivælg rulleliste ....
Column Manager: Tilføj et bestemt antal kolonner  |  Flyt kolonner  |  Skift synlighedsstatus for skjulte kolonner  |  Sammenlign områder og kolonner ...
Fremhævede funktioner: Grid fokus   |  Designvisning   |   Stor Formel Bar    Arbejdsbog & Ark Manager   |  Ressourcebibliotek (Autotekst)   |  Datovælger   |  Kombiner regneark   |  Krypter/Dekrypter celler    Send e-mails efter liste   |  Superfilter   |   Specielt filter (filter fed/kursiv/gennemstreget...) ...
Top 15 værktøjssæt12 tekst Værktøjer (tilføje tekst, Fjern tegn, ...)   |   50 + Chart Typer (Gantt kort, ...)   |   40+ Praktisk formler (Beregn alder baseret på fødselsdag, ...)   |   19 Indsættelse Værktøjer (Indsæt QR-kode, Indsæt billede fra sti, ...)   |   12 Konvertering Værktøjer (Tal til ord, Valutaomregning, ...)   |   7 Flet og del Værktøjer (Avancerede kombinere rækker, Opdel celler, ...)   |   ... og mere

Overlad dine Excel-færdigheder med Kutools til Excel, og oplev effektivitet som aldrig før. Kutools til Excel tilbyder over 300 avancerede funktioner for at øge produktiviteten og spare tid.  Klik her for at få den funktion, du har mest brug for...

Beskrivelse


Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
Comments (15)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Zdravím dokázal byste mi prosím někdo poradit s podobným problémem? Po posledním updatu Office přibyla v excelu po stisknutí pravého tlačítka nad kopírovat a vyjmout volba hledat v nabídkách která mi tam vadí a chtěl bych jí odstranit. Dá se to udělat i obráceně a nějakou funkci odstranit?

děkuji
This comment was minimized by the moderator on the site
Hi Tomáš,
I have not encountered this situation. Can you attach a screenshot to describe the problem you encountered more clearly.
This comment was minimized by the moderator on the site
Bonjour,

Je déterre le sujet car j'ai un soucis, j'ai récupérer un fichier qui m'a remplacé le menu du click droit et je ne sais pas comment revenir au menu par défaut...
Ça a modifier le menu pour n'importe quel fichier excel. J'utilise excel 2016.

Je précise que le fichier coupable a un mot de passe pour accéder à son code VBA. Mot de passe qu’évidemment je ne possède pas..

Merci d'avance pour votre aide !!
This comment was minimized by the moderator on the site
Hi Olivier,
Sorry I don't quite understand what you mean. Do you mean to back to the normal right-clicking menu?
This comment was minimized by the moderator on the site
Thanks
Does that working for all workbooks even after restarting Excel, or only for the selected workbook which saved the macro in?
This comment was minimized by the moderator on the site
Размести код в отдельном модуле, для того чтобы это работало для всех документов
This comment was minimized by the moderator on the site
Hi,
It only works for the workbook which save the macro in. Thank you for your comment.
This comment was minimized by the moderator on the site
Add VBA button to context menu works well. Thanks. How do I add more buttons ? (not good at VBA, hence the question).
This comment was minimized by the moderator on the site
Hi Vic,
The following VBA code can help you solve the problem, please have a try.

Private Sub Workbook_Deactivate()
Dim xArrB As Variant
Dim xFNum As Integer
Dim xStr As String
On Error Resume Next
With Application
xArrB = Array("MyMacro01", "MyMacro02", "MyMacro03")
For xFNum = 0 To UBound(xArrB)
xStr = xArrB(xFNum)
.CommandBars("Cell").Controls(xStr).Delete
Next xFNum
End With
On Error GoTo 0
End Sub

Private Sub Workbook_SheetBeforeRightClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
Dim cmdBtn As CommandBarButton
Dim xArrB As Variant
Dim xFNum As Integer
Dim xStr As String
On Error Resume Next
xArrB = Array("MyMacro01", "MyMacro02", "MyMacro03")
For xFNum = 0 To UBound(xArrB)
xStr = xArrB(xFNum)
With Application
.CommandBars("Cell").Controls(xStr).Delete
Set cmdBtn = .CommandBars("Cell").Controls.Add(Temporary:=True)
End With
With cmdBtn
.Caption = xStr
.Style = msoButtonCaption
.OnAction = xStr
End With
Next xFNum
On Error GoTo 0
End Sub
This comment was minimized by the moderator on the site
This doesn't work for me, I have done exactly the same as the above macro with only one menu, Does it work for anyone else or am I doing something wrong?

Thanks
This comment was minimized by the moderator on the site
Don t work with my Excel 2013
This comment was minimized by the moderator on the site
Hi Yves,I tested this code on Excel 2013 and it works fin. Did you get any error prompt? I need to know more specific about your issue
This comment was minimized by the moderator on the site
Thanks for your answerBut doesn't work on a table. On normal cell is work perfectly.
This comment was minimized by the moderator on the site
Hi yves,The problem is clear now, and I need time to fix it. Please wait. Thank you for your feedback.
This comment was minimized by the moderator on the site
Thanks a lot
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations