Hallo Robert,
das Problem ist nicht, dass der Code nicht gespeichert wird, sondern dass du den Code mehrfach in verschiedenen Modulen und Klassenmodulen eingefügt hast.
Lösche alle Module und Klassenmodule bis auf das Modul 9.
Ergänze den Code für den Commandbutton wie folgt:
Private Sub CommandButton1_Click()
Sheets("sheet1").Range("A:A").ClearContents
For i = 1 To 15
generate:
RowNum = Application.RoundUp(Rnd() * 20, 0)
If Application.CountIf(Sheets("sheet1").[A:A], Sheets("sheet2").Cells(RowNum, "A")) = 0 Then
Sheets("Sheet1").Range("A" & Rows.Count).End(xlUp).Offset(1).Value = Sheets("Sheet2").Cells(RowNum, "A").Value
Else
GoTo generate
End If
Next i
Call groesserNull
End Sub
Dann sollte es funktionieren. Hier ist die bearbeitetete Datei: https://filehorst.de/d/cotIAHry
Beachte Bitte, dass in den Fomeln in allen Feldern zwischen Spalte D und dem Gleichheitszeichen Zahlen oder Rechenzeichen stehen müssen, sonst kommte es im Prüfmakro zu einem Fehler.
Gruß
M.O.