So ich hab eigtl. ein Spiel das ich ganz gerne nehmen würde aber mein Wissensstand reicht nicht aus um die Vorgänge im Quellcode nachzuvollziehen und erklären zu können aber was "einfacheres" als das Spiel find ich auch nicht

Hier mal der Quellcode von Senso (mein gewünschtes Spiel):
Option Explicit
Option Base 1
Dim iMax As Integer
Dim iCounter As Integer
Dim iZufall(50) As Integer
Dim iFarbe_R(9), iFarbe_G(9), iFarbe_B(9) As Integer
Dim i, i2, j, k, l As Integer
Dim sPauseKlein, sPauseGross As Single
Sub Auto_Open()
ThisWorkbook.Worksheets("Senso").Activate
iMax = ThisWorkbook.Worksheets("Init").Cells(1, 2).Value
sPauseKlein = ThisWorkbook.Worksheets("Init").Cells(3, 2).Value
sPauseGross = ThisWorkbook.Worksheets("Init").Cells(4, 2).Value
Randomize Timer
For i = 1 To iMax
ThisWorkbook.Worksheets("Zufall").Cells(i, 2).Value = 0
Next i
For i = 1 To 9
iFarbe_R(i) = ThisWorkbook.Worksheets("Init").Cells(i + 5, 2).Value
iFarbe_G(i) = ThisWorkbook.Worksheets("Init").Cells(i + 5, 3).Value
iFarbe_B(i) = ThisWorkbook.Worksheets("Init").Cells(i + 5, 4).Value
Next i
For i = 1 To 9
Call ButtonColor(i)
Next i
k = 0
For i2 = 1 To iMax + 3
ThisWorkbook.Worksheets("Senso").Cells(i2 + 2, 1).Value = ""
ThisWorkbook.Worksheets("Senso").Cells(i2 + 2, 2).Value = ""
ThisWorkbook.Worksheets("Senso").Cells(i2 + 2, 2).Font.Color = RGB(0, 0, 0)
ThisWorkbook.Worksheets("Senso").Cells(i2 + 2, 2).Interior.Color = 12632256
ThisWorkbook.Worksheets("Senso").Cells(i2 + 2, 3).Interior.ColorIndex = 15
Next i2
ThisWorkbook.Worksheets("Senso").Cells(4,

.Value = "nn"
End Sub
Private Sub CommandButton10_Click()
End
End Sub
Private Sub CommandButton11_Click()
For i = 0 To 56
ThisWorkbook.Worksheets("Senso").Cells(40, 1).Interior.ColorIndex = i
Call MsgBox("Colorindex=" + Str(i), vbOKOnly)
Next i
End Sub
Private Sub CommandButton1_Click()
Call Einsetzen_und_Prüfe(1)
End Sub
Private Sub CommandButton1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(1)
End Sub
Private Sub CommandButton2_Click()
Call Einsetzen_und_Prüfe(2)
End Sub
Private Sub CommandButton2_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(2)
End Sub
Private Sub CommandButton3_Click()
Call Einsetzen_und_Prüfe(3)
End Sub
Private Sub CommandButton3_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(3)
End Sub
Private Sub CommandButton4_Click()
Call Einsetzen_und_Prüfe(4)
End Sub
Private Sub CommandButton4_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(4)
End Sub
Private Sub CommandButton5_Click()
Call Einsetzen_und_Prüfe(5)
End Sub
Private Sub CommandButton5_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(5)
End Sub
Private Sub CommandButton6_Click()
Call Einsetzen_und_Prüfe(6)
End Sub
Private Sub CommandButton6_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(6)
End Sub
Private Sub CommandButton7_Click()
Call Einsetzen_und_Prüfe(7)
End Sub
Private Sub CommandButton7_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(7)
End Sub
Private Sub CommandButton8_Click()
Call Einsetzen_und_Prüfe(

End Sub
Private Sub CommandButton8_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(

End Sub
Private Sub CommandButton9_Click()
Call Einsetzen_und_Prüfe(9)
End Sub
Private Sub CommandButton9_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call Einsetzen_und_Prüfe(9)
End Sub
Private Sub CommandButtonReset_Click()
Call Auto_Open
End Sub
Private Sub CommandButtonStart_Click()
If k > 0 Then
GoTo Weiter
End If
'UserForm1.Show besser mit TextBox
Dim Mldg, Titel, Voreinstellung, Wert1
Mldg = "Bitte vor dem Spiel noch den Namen eingeben ..."
Titel = "Name"
Voreinstellung = ThisWorkbook.Worksheets("Senso").Cells(4,

' Meldung, Titel und Standardwert anzeigen.
Wert1 = InputBox(Mldg, Titel, Voreinstellung)
If Wert1 = "" Then
End
End If
Call Wait_A_Minute(1)
Call Auto_Open
For i = 1 To 9
Call ButtonBlack(i)
Next i
Call Wait_A_Minute(1)
For i = 1 To iMax
iZufall(i) = Int((Rnd * 9) + 1)
' TEST If i < 5 Then iZufall(i) = 2
ThisWorkbook.Worksheets("Zufall").Cells(i, 1).Value = iZufall(i)
Next i
For i = 1 To 9
Call ButtonColor(i)
Next i
Call Wait_A_Minute(1)
'UserForm1.Show
'Call Wait_A_Minute(1)
Weiter:
k = k + 1
Call Game_Play
DoEvents
End Sub
Private Sub Game_Play()
' For j = 1 To k
' ThisWorkbook.Worksheets("Senso").Cells(5 + j, 2).Interior.ColorIndex = 5
' Next j
For j = 1 To k
Call ButtonBlack(iZufall(j))
ThisWorkbook.Worksheets("Senso").Cells(5 + j, 2).Interior.ColorIndex = 16
DoEvents
Call Wait_A_Minute(sPauseKlein)
Call ButtonColor(iZufall(j))
DoEvents
Call Wait_A_Minute(sPauseKlein)
Next j
l = 0
' Call Wait_A_Minute(sPauseGross)
End Sub
Private Sub Einsetzen_und_Prüfe(Ziffer As Integer)
l = l + 1
ThisWorkbook.Worksheets("Senso").Cells(5 + l, 2).Interior.ColorIndex = 4
'ThisWorkbook.Worksheets("Senso").Cells(40, 1).Value = l
'ThisWorkbook.Worksheets("Senso").Cells(40, 2).Value = k
ThisWorkbook.Worksheets("Zufall").Cells(l, 2).Value = Ziffer
If ThisWorkbook.Worksheets("Zufall").Cells(l, 1).Value <> _
ThisWorkbook.Worksheets("Zufall").Cells(l, 2).Value Then
ThisWorkbook.Worksheets("Senso").Cells(3, 1).Value = "Zufalls-"
ThisWorkbook.Worksheets("Senso").Cells(4, 1).Value = "zahlen"
ThisWorkbook.Worksheets("Senso").Cells(3, 2).Value = "Ihre"
ThisWorkbook.Worksheets("Senso").Cells(4, 2).Value = "Zahlen"
For i2 = 1 To k
ThisWorkbook.Worksheets("Senso").Cells(i2 + 5, 1).Value = ThisWorkbook.Worksheets("Zufall").Cells(i2, 1).Value
ThisWorkbook.Worksheets("Senso").Cells(i2 + 5, 2).Value = ThisWorkbook.Worksheets("Zufall").Cells(i2, 2).Value
Next i2
ThisWorkbook.Worksheets("Senso").Cells(l + 5, 2).Value = Ziffer
ThisWorkbook.Worksheets("Senso").Cells(l + 5, 2).Font.Color = RGB(255, 255, 255)
ThisWorkbook.Worksheets("Senso").Cells(l + 5, 2).Interior.Color = RGB(255, 0, 0)
Call MsgBox(" * * * F E H L E R * * * " + Chr$(10) + Chr$(13) + Chr$(10) + Chr$(13) + _
"Score:" + Str(k + (l / 100)), vbOKOnly)
Call HighScore(k, l)
End
End If
DoEvents
If l = k Then
DoEvents
ThisWorkbook.Worksheets("Senso").Cells(1, 1).Select
Call Wait_A_Minute(sPauseGross)
Call CommandButtonStart_Click
End If
End Sub
Private Sub HighScore(ByVal a, b)
Dim gHighScoreTemp, gHighScore As Single
gHighScoreTemp = a + b / 100
For i = 3 To 12
gHighScore = ThisWorkbook.Worksheets("Senso").Cells(i, 13).Value
If gHighScoreTemp > gHighScore Then
If i = 3 Then
Call MsgBox("Der alte Highscore lag bei" + Str(gHighScore) + Chr$(10) + Chr$(13) + Chr$(10) + Chr$(13) + _
"Ihr neuer Highscore liegt bei" + Str(gHighScoreTemp), vbOKOnly, "Neuer Highscore ***")
Else
Call MsgBox("Ein alter Score lag bei" + Str(gHighScore) + Chr$(10) + Chr$(13) + Chr$(10) + Chr$(13) + _
"Ihr neuer Score liegt bei" + Str(gHighScoreTemp), vbOKOnly, "Neuer Score!")
End If
For j = 12 To i + 1 Step -1
ThisWorkbook.Worksheets("Senso").Cells(j, 11).Value = ThisWorkbook.Worksheets("Senso").Cells(j - 1, 11).Value
ThisWorkbook.Worksheets("Senso").Cells(j, 12).Value = ThisWorkbook.Worksheets("Senso").Cells(j - 1, 12).Value
ThisWorkbook.Worksheets("Senso").Cells(j, 13).Value = ThisWorkbook.Worksheets("Senso").Cells(j - 1, 13).Value
Next j
ThisWorkbook.Worksheets("Senso").Cells(i, 11).Value = ""
ThisWorkbook.Worksheets("Senso").Cells(i, 12).Value = Date
ThisWorkbook.Worksheets("Senso").Cells(i, 13).Value = gHighScoreTemp
ThisWorkbook.Worksheets("Senso").Cells(i, 11).Value = ThisWorkbook.Worksheets("Senso").Cells(4,

.Value
Exit Sub
End If
Next i
End Sub
Private Sub ButtonBlack(ByVal index As Integer)
Select Case index
Case 1
CommandButton1.ForeColor = RGB(255, 255, 255)
CommandButton1.BackColor = RGB(0, 0, 0)
Case 2
CommandButton2.ForeColor = RGB(255, 255, 255)
CommandButton2.BackColor = RGB(0, 0, 0)
Case 3
CommandButton3.ForeColor = RGB(255, 255, 255)
CommandButton3.BackColor = RGB(0, 0, 0)
Case 4
CommandButton4.ForeColor = RGB(255, 255, 255)
CommandButton4.BackColor = RGB(0, 0, 0)
Case 5
CommandButton5.ForeColor = RGB(255, 255, 255)
CommandButton5.BackColor = RGB(0, 0, 0)
Case 6
CommandButton6.ForeColor = RGB(255, 255, 255)
CommandButton6.BackColor = RGB(0, 0, 0)
Case 7
CommandButton7.ForeColor = RGB(255, 255, 255)
CommandButton7.BackColor = RGB(0, 0, 0)
Case 8
CommandButton8.ForeColor = RGB(255, 255, 255)
CommandButton8.BackColor = RGB(0, 0, 0)
Case 9
CommandButton9.ForeColor = RGB(255, 255, 255)
CommandButton9.BackColor = RGB(0, 0, 0)
Case Else
End Select
End Sub
Private Sub ButtonColor(ByVal index As Integer)
Select Case index
Case 1
CommandButton1.ForeColor = RGB(0, 0, 0)
CommandButton1.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 2
CommandButton2.ForeColor = RGB(0, 0, 0)
CommandButton2.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 3
CommandButton3.ForeColor = RGB(0, 0, 0)
CommandButton3.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 4
CommandButton4.ForeColor = RGB(0, 0, 0)
CommandButton4.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 5
CommandButton5.ForeColor = RGB(0, 0, 0)
CommandButton5.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 6
CommandButton6.ForeColor = RGB(0, 0, 0)
CommandButton6.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 7
CommandButton7.ForeColor = RGB(0, 0, 0)
CommandButton7.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 8
CommandButton8.ForeColor = RGB(0, 0, 0)
CommandButton8.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case 9
CommandButton9.ForeColor = RGB(0, 0, 0)
CommandButton9.BackColor = RGB(iFarbe_R(index), iFarbe_G(index), iFarbe_B(index))
Case Else
End Select
End Sub
Sub Wait_A_Minute(ByVal Sekunden As Single)
Dim Start, Ende
Start = Timer
Do While Timer < Start + Sekunden
DoEvents
Loop
End Sub