Hallo liebes Forum :-)
ich bin absoluter Beginner in VBA und würde mich sehr über eure Hilfe in meinem Anliegen freuen.
Meine Idee war es, mehrere Multiple-Choice-Quiz (mit verschiedenen Fragen/Themen) auf verschiedenen Datenblättern zu kreieren. Über ein Youtubevideo bin ich auf folgenden Code gestoßen der es mir ermöglicht ein Quiz anhand von vorgefertigten Fragen mit Antworten zu starten.
Private Sub CommandButton1_Click()
If OptionButton1 = True And Sheets(2).Cells(a, 5) = 1 Or OptionButton2 = True And Sheets(2).Cells(a, 5) = 2 Or OptionButton3 = True And Sheets(2).Cells(a, 5) = 3 Then
Unload Me
Else
If OptionButton1 = True Then
OptionButton1.ForeColor = vbRed
End If
If OptionButton2 = True Then
OptionButton2.ForeColor = vbRed
End If
If OptionButton3 = True Then
OptionButton3.ForeColor = vbRed
End If
fehler = fehler + 1
End If
End Sub
Private Sub CommandButton2_Click()
quit = 1
Unload Me
End Sub
Private Sub UserForm_Initialize()
UserForm1.Caption = "Frage " & i & " von 10"
Label1 = Sheets(2).Cells(a, 1)
OptionButton1.Caption = Sheets(2).Cells(a, 2)
OptionButton2.Caption = Sheets(2).Cells(a, 3)
OptionButton3.Caption = Sheets(2).Cells(a, 4)
End Sub
und das Modul dazu sieht wie folgt aus:
Global a, i, fehler, quit As Integer
Sub test()
Dim y(1 To 10), mini, temp As Integer
fehler = 0
quit = 0
For i = 1 To 10
mini = WorksheetFunction.Min(Sheets(2).Columns(6))
Do
temp = 0
a = Int(Rnd * 70) + 1
For j = 1 To 10
If a = y(j) Then
temp = 1
End If
Next
If Sheets(2).Cells(a, 6) - mini >= 2 Then
temp = 1
End If
Loop Until temp = 0
Sheets(2).Cells(a, 6) = Sheets(2).Cells(a, 6) + 1
y(i) = a
UserForm1.Show
If quit = 1 Then
Exit For
End If
Next
MsgBox "Du hast " & fehler & " Fehler!", vbOKOnly
End Sub
Jetzt kommt mein Anliegen. Ich würde gerne weitere solcher Quizfunktionen auf den anderen Blättern einfügen. Wenn ich dies durch plumpes copy-paste (ja ich weiß das es dumm ist aber wie gesagt ich hab garkeine ahnung :P) einfüge, spuckt mir das Programm Fehlermeldungen aus mit denen ich leider nicht umgehen kann.
Falls ihr mein Anliegen versteht und mir helfen könntet wäre ich euch wirklich sehr dankbar.
Lieben Gruß
Ivano
|