Hi Reinhard.
Dann, um es potentiellen helfern so einfach wie möglich zu
machen (Es ist deien zeit die wegläuft wenn sie Zusatzdunge
tun müssen!) schreibe bitte komplett einzeln lauffähige
Prozeduren.
Also auch globale variablen in der Sub mit einem Wert
ausstatten.
Werde den kompletten lauffähigen Code weiter unten posten.
Was ich nicht kapiere ist z.B. dies:
Dim x as Integer
fieldInfo = x & „_edit“
Da kannn man doch das x weglassen *denk*
Würde ich nicht meinen, denn dieser Index (x as Integer) brauche ich um die dynamisch erzeugten CommandButtons eindeutig zu identifizieren.
Zur Laufzeit einen CB erstellen und ihm ein Click-Ereignis
zuordnen geht schon.
Das freut mich! Dachte schon das ist unmöglich. 
Google mal nach CodeModule InsertLines
Das mit dem CodeModule hat mir schon mal weitergeholfen.
Hier nun der komplette lauffähige Code:
Sub Foo()
Dim topPosition As Integer
Dim letztePositionMenge As Integer
Dim LetztePosition As Integer
Dim Modell As String
Modell = "foo"
For startIndex = 2 To 10 Step 1
LetztePosition = Worksheets("Modell").Range("A10000").End(xlUp).row
For Start = 2 To LetztePosition Step 1
If Modell = Worksheets("Modell").Range("A" & Start).Value Then
letztePositionMenge = Worksheets("Menge").Range("A10000").End(xlUp).row
topPosition = 480
For x = 2 To letztePositionMenge Step 1
Dim cmdBox As MSForms.CommandButton
Dim tboBox As MSForms.TextBox
Dim cboBox As MSForms.ComboBox
Dim nextTop As Integer
Dim titleBarHeight As Integer
Dim fieldInfo As String
fieldInfo = "\_" & x & "\_edit"
Set cmdBox = Me.Controls.Add("Forms.CommandButton.1", "cmd" & fieldInfo, True)
Dim code As String
code = code & vbLf
code = code & "Private Sub cmd" & fieldInfo & "\_Click()" & vbLf
code = code & " cmdNeueMenge.Visible = false" & vbLf
code = code & "End Sub"
ThisWorkbook.VBProject.VBComponents("frmMengeneingabe").CodeModule.AddFromString code
cmdBox.Caption = "Ändern"
cmdBox.Left = 210
cmdBox.Top = topPosition
cmdBox.Height = 20
cmdBox.Width = 60
fieldInfo = x & "\_delete"
Set cmdBox = Me.Controls.Add("Forms.CommandButton.1", "cmd" & fieldInfo, True)
cmdBox.Caption = "Delete"
cmdBox.Left = 270
cmdBox.Top = topPosition
cmdBox.Height = 20
cmdBox.Width = 60
topPosition = topPosition + 30
Next x
End If
Next Start
Next startIndex
End Sub
Nun mein Problem besteht weiterhin, über CodeModule.AddFromString code kann ich Zeilen meiner Form hinzufügen. Ich sehe den erzeugten Code in meiner Code-Anzeige der Form frmMengeneingabe. Jedoch, wenn ich nun auf einen der erzeugten CommandButtons klicke, wird der Code nicht ausgeführt. Ich meine zu wissen weshalb, denn dieser Code wird zur Laufzeit erzeugt und vom Compiler nicht mit kompiliert. Deshalb, kann das auch nicht klappen, stimmt das so?
Trotzdem muss ich das Click-Event dynamisch erzeugen, kannst du mir weiterhelfen?
Danke dir.
Gruß Sebastian