Thema Datum  Von Nutzer Rating
Antwort
Rot Vokabeltrainer - Problem mit Schleife
25.09.2009 03:06:54 Schorsch
NotSolved
25.09.2009 09:39:05 Sozu
NotSolved

Ansicht des Beitrags:
Von:
Schorsch
Datum:
25.09.2009 03:06:54
Views:
1446
Rating: Antwort:
  Ja
Thema:
Vokabeltrainer - Problem mit Schleife
Hallo. Habe in Excel einen Vokabeltrainer programmiert.
In den sheets (Tabelle1 = Lektion 1, Tabelle2 = Lektion 2, ...):
Spalte A: spanisches Wort
Spalte B: deutsche Übersetzunh
Spalte C: counter richtig beantwortet
Spalte D: counter falsch beantwortet

Problem ist nun, dass ich in den Quelltext eine Schleife habe, die bei Falschbeantwortung der Vokabel diese so oft wiederholen lässt, bis ich sie richtig eingetippt habe. Am Ende soll ermittelt werden, wie viel Prozent der eingaben richtig waren. Jetzt ist es so, dass das Programm am Ende immer 100% richtig anzeigt, da nur noch die richtig beantworteten gezählt werden... siehe Quelltext. Kann mir wer helfen?

Tausend Dank!


S.


Sub Abfragen()

Dim durchlauf, i, zähler, lektion As Integer, antwort As String, vokabel_zahl As Long, vokabel, richtige_vokabel As Variant
Dim letzte_zeile As Variant

zähler = 0
durchlauf = InputBox("Wie viele Vokabeln?")
lektion = InputBox("Welche Lektion?" & Chr(10) & "Zahl zwischen 1 und 5")
letzte_zeile = Worksheets(lektion).Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To durchlauf
start:
vokabel_zahl = Int((letzte_zeile * Rnd) + 1)
wiederholen:
If Worksheets(lektion).Cells(vokabel_zahl, 3).Value <= 5 Then
vokabel = Worksheets(lektion).Cells(vokabel_zahl, 2)
richtige_vokabel = Worksheets(lektion).Cells(vokabel_zahl, 1)
antwort = InputBox(vokabel)
Else
GoTo start:
End If

If antwort = richtige_vokabel Then
MsgBox ("RICHTIG! " & antwort & " heißt " & vokabel)
Worksheets(lektion).Cells(vokabel_zahl, 3).Value = Worksheets(lektion).Cells(vokabel_zahl, 3).Value + 1
zähler = zähler + 1
Else
MsgBox ("FALSCH! " & richtige_vokabel & " heißt " & vokabel & _
Chr(10) & "Deine Antwort war " & antwort & " !")
Worksheets(lektion).Cells(vokabel_zahl, 4).Value = Worksheets(lektion).Cells(vokabel_zahl, 4).Value + 1
GoTo wiederholen:
End If
Next i

MsgBox ("Du hast " & (zähler / durchlauf) * 100 & "% richtig beantwortet!") 'hier kommt die falsche zahl raus! :-)


End Sub

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst genau und ausführlich
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
  • Bitte markieren Sie Ihre Anfrage als erledigt wenn Ihnen geholfen wurde
Thema: Name: Email:

 
 

Thema Datum  Von Nutzer Rating
Antwort
Rot Vokabeltrainer - Problem mit Schleife
25.09.2009 03:06:54 Schorsch
NotSolved
25.09.2009 09:39:05 Sozu
NotSolved