Wie führt man mehrere Makros über das Rechtsklick-Menü in Excel aus?

Wenn es mehrere VBA-Makros in Ihrer Arbeitsmappe gibt, sollten Sie das VBA-Fenster öffnen und dann das Makro auswählen, wenn Sie den Code ausführen müssen. In diesem Artikel möchte ich darüber sprechen, wie man Makros über das Rechtsklick-Menü ausführt, um Ihre Arbeit effizienter zu gestalten, wie im linken Screenshot gezeigt.
Mehrere Makros über das Rechtsklick-Menü mit VBA-Codes ausführen
Mehrere Makros über das Rechtsklick-Menü mit VBA-Codes ausführen
Um die Makro-Codes innerhalb einer Arbeitsmappe über das Rechtsklick-Menü auszuführen, können Ihnen die folgenden Schritte helfen, bitte so vorgehen:
1. Halten Sie die Tasten Alt + F11 gedrückt, um das Microsoft Visual Basic for Applications-Fenster zu öffnen.
2. Klicken Sie dann im linken Projekt-Bereich doppelt auf DieseArbeitsmappe, und kopieren Sie dann den folgenden VBA-Code in das leere Modul.
Private Sub Workbook_Open()
Run "LoadMacro"
End Sub
Private Sub Workbook_Activate()
Run "LoadMacro"
End Sub
Private Sub Workbook_Deactivate()
Run "ClearMacro"
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Run "ClearMacro"
ThisWorkbook.Save
End Sub
3. Noch im Microsoft Visual Basic for Applications-Fenster klicken Sie bitte auf Einfügen > Modul und fügen den folgenden Code in dieses Modul ein.
Private Sub LoadMacro()
Dim xArrMenu As Variant
Dim xStrLine, xSreBtnName As String
Dim xObjCBCF, xObjCntrAll As CommandBarControl
Dim xObjCBCs As CommandBars
Dim xObjCBBtn As CommandBarButton
Dim xIntLine, xFNum As Integer
Dim xObjComponent As Object
Run "ClearMacro"
Set xObjCBCF = Application.CommandBars("Cell").Controls.Add(msoControlPopup, before:=1)
xObjCBCF.Caption = " Run Macro "
xObjCBCF.BeginGroup = False
For Each xObjComponent In ActiveWorkbook.VBProject.VBComponents
If xObjComponent.Type = 1 Then
For xIntLine = 1 To xObjComponent.CodeModule.CountOfLines
xStrLine = xObjComponent.CodeModule.Lines(xIntLine, 1)
xStrLine = Trim(xStrLine)
If (InStr(xStrLine, "()") > 0) And (Left(xStrLine, 11) = "Private Sub" Or Left(xStrLine, 3) = "Sub") Then
xSreBtnName = ""
If "Private Sub" = Left(xStrLine, 11) Then
xSreBtnName = Trim(Mid(xStrLine, 12, InStr(xStrLine, "()") - 12))
ElseIf "Sub" = Left(xStrLine, 3) Then
xSreBtnName = Trim(Mid(xStrLine, 4, InStr(xStrLine, "()") - 4))
End If
If xSreBtnName <> "" And xSreBtnName <> "RightClickReset" And xSreBtnName <> "LoadMacro" And xSreBtnName <> "ActionMacro" Then
Set xObjCBBtn = xObjCBCF.Controls.Add
With xObjCBBtn
.FaceId = 186
.Style = msoButtonIconAndCaption
.Caption = xSreBtnName
.OnAction = "ActionMacro"
End With
End If
End If
Next xIntLine
End If
Next xObjComponent
End Sub
Private Sub ClearMacro()
On Error Resume Next
CommandBars("Cell").Controls(" Run Macro ").Delete
Err.Clear
CommandBars("Cell").Reset
End Sub
Private Sub ActionMacro()
On Error GoTo Err1
With Application
Run .CommandBars("Cell").Controls(1).Controls(.Caller(1)).Caption
End With
Exit Sub
Err1:
MsgBox "Invalid"
End Sub
4. Nachdem Sie die Codes eingefügt haben, klicken Sie auf Extras > Verweise, und ein Verweise-VBAProjekt Dialogfeld wird angezeigt. Aktivieren Sie dann die Option Microsoft Visual Basic for Applications Extensibility 5.3 in der Liste der verfügbaren Verweise, siehe Screenshot:
5. Klicken Sie dann auf OK, um das Dialogfeld zu schließen. Nun sollten Sie diese Arbeitsmappe im Excel-Makrofähige Arbeitsmappe-Format speichern, siehe Screenshot:
6. Zum Schluss starten Sie die Arbeitsmappe neu, damit die Codes wirksam werden. Wenn Sie nun mit der rechten Maustaste auf eine Zelle klicken, wird eine Makro ausführen-Option in das Rechtsklick-Menü eingefügt, und alle Makros in Ihrer Arbeitsmappe werden in der Untermenüliste angezeigt, wie im folgenden Screenshot:
7. Dann können Sie den Code einfach durch Anklicken ausführen.
Die besten Produktivitätstools für das Büro
Stärken Sie Ihre Excel-Fähigkeiten mit Kutools für Excel und genießen Sie Effizienz wie nie zuvor. Kutools für Excel bietet mehr als300 erweiterte Funktionen, um die Produktivität zu steigern und Zeit zu sparen. Klicken Sie hier, um die Funktion zu erhalten, die Sie am meisten benötigen...
Office Tab bringt die Tab-Oberfläche in Office und macht Ihre Arbeit wesentlich einfacher
- Aktivieren Sie die Tabulator-Bearbeitung und das Lesen in Word, Excel, PowerPoint, Publisher, Access, Visio und Project.
- Öffnen und erstellen Sie mehrere Dokumente in neuen Tabs innerhalb desselben Fensters, statt in neuen Einzelfenstern.
- Steigert Ihre Produktivität um50 % und reduziert hunderte Mausklicks täglich!
Alle Kutools-Add-Ins. Ein Installationspaket
Das Kutools for Office-Paket bündelt Add-Ins für Excel, Word, Outlook & PowerPoint sowie Office Tab Pro und ist ideal für Teams, die mit mehreren Office-Anwendungen arbeiten.





- All-in-One-Paket — Add-Ins für Excel, Word, Outlook & PowerPoint + Office Tab Pro
- Ein Installationspaket, eine Lizenz — in wenigen Minuten einsatzbereit (MSI-kompatibel)
- Besser gemeinsam — optimierte Produktivität in allen Office-Anwendungen
- 30 Tage kostenlos testen — keine Registrierung, keine Kreditkarte erforderlich
- Bestes Preis-Leistungs-Verhältnis — günstiger als Einzelkauf der Add-Ins