VBA-Programmierung in Microsoft Excel

Tutorial: Excel-Beispiele

Makros aus einem Standardmodul in ComboBox einlesen

Gruppe

VBE

Bereich

Prozedur

Thema

Makros aus einem Standardmodul in ComboBox einlesen

Problem

Über Schaltflächenklick sollen die Makros eines Standardmoduls in die ComboBox eingelesen und bei Auswahl in der ComboBox aufgerufen werden.

Lösung

Geben Sie den Ereigniscode in die nachfolgend genannten Module ein.




ClassModule: Tabelle1

Private Sub cboMacros_Change()
   If cboMacros.Value = "" Then Exit Sub
   Run cboMacros.Value
End Sub

Private Sub cmdFillCbo_Click()
   Dim iRow As Integer
   cboMacros.Clear
   With ThisWorkbook.VBProject.VBComponents("basMain").CodeModule
      For iRow = 1 To .CountOfLines
         If .ProcOfLine(iRow, 0) > "" Then
            If .ProcBodyLine(.ProcOfLine(iRow, 0), 0) = iRow Then
               cboMacros.AddItem .ProcOfLine(iRow, 0)
            End If
         End If
      Next iRow
   End With
   MsgBox "Makros wurden eingelesen!"
End Sub
StandardModule: basMain

Sub Makro1()
   MsgBox "Ich bin Makro" & 1
End Sub

Sub Makro2()
   MsgBox "Ich bin Makro" & 2
End Sub

Sub Makro3()
   MsgBox "Ich bin Makro" & 3
End Sub

Sub Makro4()
   MsgBox "Ich bin Makro" & 4

    


Beiträge aus dem Excel-Forum zu den Themen VBE und Prozedur