Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
716to720
716to720
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Vokabeltrainer selbst erstellen

Vokabeltrainer selbst erstellen
09.01.2006 17:32:36
Hans
Hallo,
ich habe eine Menge englisch Vokabeln zu lernen, dazu habe ich mir über zwei Spalten eine Excel Tabelle gemacht. In Spalte A ist die deutsche Bedeutung und in Spalte B die englische Übersetzung.
( Es kommen täglich neue Vokabeln dazu ! )
Nun spiele ich mit dem Gedanken mir über eine, zufallsgenerierte Messagebox, die Vokabeln abfragen zu lassen. Soll heißen, dass mal ein englisches Wort gefragt wird und ich das deutsche Wort eingeben muss, mal eben halt umgekehrt.
Es wäre sehr nett wenn ich etwas Unterstützung bei diesem Projekt erhalten würde.
Vielen Dank
Hans-Georg

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Vokabeltrainer selbst erstellen
09.01.2006 18:12:29
Andi
Hi,
hier mal ein Ansatz;
das ganze wird über nen CommandButton gestartet, neue Vokabeln können jederzeit hinzugefügt werden.

Private Sub CommandButton1_Click()
Dim spalte As Integer
Dim zeile As Long
Dim Antwort As String
spalte = Int(Rnd() * 2) + 1
zeile = Int(Rnd() * Range("A65536").End(xlUp).Row) + 1
Antwort = InputBox("Bitte die Übersetzung von" & Chr(10) & Cells(zeile, spalte) & Chr(10) & "eingeben:")
Select Case spalte
Case 1
If Antwort = Cells(zeile, 2).Value Then
MsgBox "richtig"
Else
MsgBox "Falsch" & Chr(10) & "Die richtige Antwort lautet:" & Chr(10) & Cells(zeile, 2).Value
End If
Case 2
If Antwort = Cells(zeile, 1).Value Then
MsgBox "richtig"
Else
MsgBox "Falsch" & Chr(10) & "Die richtige Antwort lautet:" & Chr(10) & Cells(zeile, 1).Value
End If
End Select
End Sub

Schönen Gruß,
Andi
Anzeige
AW: Fehler beim kompilieren
09.01.2006 18:20:29
Hans
Hallo und danke für die schnelle Antwort
Ich bekomme folgende Fehlermeldung :
" Nach End Sub,End Funktion oder End Property, können nur Kommentare stehen "
Leider kann ich mit der Meldung nichts anfangen
MfG
Hans - Georg
AW: Fehler beim kompilieren
09.01.2006 18:23:09
Andi
Hi,
ich vermute mal, Du hast meinen Code über das "Option Explicit" in das Tabellen-Modul kopiert; es gehört aber drunter.
Schönen Gruß,
Andi
AW: Fehler beim kompilieren
09.01.2006 18:24:39
Hans
Sorry,
ich habe "End Sub" 2 mal in der Syntax gehabt!
Fuzzt aber nun prima !
Vielen vielen Dank
Hans - Georg
Gern geschehen... (ot)
09.01.2006 18:26:40
Andi
.
Nachtrag
09.01.2006 19:11:10
Andi
Hi nochmal,
hatte grad Zeit und Lust und hab das ganze noch ein wenig aufgebohrt;
die Vokabeln haben jetzt eine Priorität zwischen 1 und 5 mit der die Häufigkeit festgelegt wird, wie oft sie durchschnittlich drankommen. Bei falscher Eingabe erhöht sich die Priorität um 1, bei richtiger Eingabe verringert sie sich um 1. Neu eingegebene Vokabeln haben die Priorität 3.
Das ganze sieht so aus:

Private Sub CommandButton1_Click()
Dim spalte As Integer
Dim a As Long
Dim b As Long
Dim zeile As Integer
Dim Antwort As String
b = 0
spalte = Int(Rnd() * 2) + 1
a = Int(Rnd() * Application.WorksheetFunction.Sum(Range("C:C"))) + 1
For zeile = 1 To Range("C65536").End(xlUp).Row
b = b + Cells(zeile, 3).Value
If b >= a Then Exit For
Next zeile
Antwort = InputBox("Bitte die Übersetzung von" & Chr(10) & Cells(zeile, spalte) & Chr(10) & "eingeben:")
Select Case spalte
Case 1
If Antwort = Cells(zeile, 2).Value Then
MsgBox "richtig"
If Cells(zeile, 3).Value > 1 Then Cells(zeile, 3).Value = Cells(zeile, 3).Value - 1
Else
MsgBox "Falsch" & Chr(10) & "Die richtige Antwort lautet:" & Chr(10) & Cells(zeile, 2).Value
If Cells(zeile, 3).Value < 5 Then Cells(zeile, 3).Value = Cells(zeile, 3).Value + 1
End If
Case 2
If Antwort = Cells(zeile, 1).Value Then
MsgBox "richtig"
If Cells(zeile, 3).Value > 1 Then Cells(zeile, 3).Value = Cells(zeile, 3).Value - 1
Else
MsgBox "Falsch" & Chr(10) & "Die richtige Antwort lautet:" & Chr(10) & Cells(zeile, 1).Value
If Cells(zeile, 3).Value < 5 Then Cells(zeile, 3).Value = Cells(zeile, 3).Value + 1
End If
End Select
End Sub


Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 1 Then Target.Offset(0, 2).Value = 3
Application.EnableEvents = True
End Sub

Schönen Gruß,
Andi
Anzeige
AW: Nachtrag
09.01.2006 19:15:33
Andi
Bei schon vorhandenen Vokabeln muss die Priorität manuell in Spalte C eingetragen werden...
AW: Nachtrag
09.01.2006 19:39:36
Hans
Hallo Andi,
ich hab mal den neuen Code in den Schaltbutton eingefügt.
Nun habe ich festgestellt, dass eine Vokabel bis zu dreimal hintereinanger abgefragt werden.
z.B. "Geben Sie bitte die Übersetzung für Strand ein!" wird dann bis zu dreimal abgefragt und anschließend wird die Übersetzung von "Beach" dreimal gefordert. Das ist doch sicher nicht in Deinem Sinn gewesen, oder ?
MfG
Hans - Georg
AW: Nachtrag
09.01.2006 19:43:46
Hans-Georg
Hallo,
nach erneutem Test, wird nurnoch nach den Übersetzungen von "evening" = Abend oder der Übersetzung von "Abend" = evening gefragt, irgendwo harkt es !
MfG
Hans - Georg
Anzeige
AW: Nachtrag
09.01.2006 19:46:06
Hans
Hallo noch mal,
ich hab mal in der Tabelle nachgesehen.
Abend - evening,
sind in meiner Tabelle die ersten Einträge.
MfG
Hans - Georg
AW: Nachtrag
10.01.2006 09:23:08
Andi
Hi,
ich hab das mal testweise mit 7 Einträgen 10.000-mal durchlaufen und mir die jeweilige Häufigkeit anzeigen lassen; bei gleicher Priorität sah das Ergebnis so aus:
1 1401
2 1493
3 1424
4 1455
5 1435
6 1385
7 1407
also durchaus in der statistischen Toleranz.
Hast Du alle Prioritäten in Spalte C eingetragen?
Kann mich leider erst heut abend wieder melden, sorry.
Schönen Gruß,
Andi
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige
Archiv - Verwandte Themen
Forumthread
Beiträge