wenn falsch dann zeile kopieren in

Bild

Betrifft: wenn falsch dann zeile kopieren in
von: Silvie
Geschrieben am: 12.11.2003 10:41:37

Hallo Excel-Profis!

Wahrscheinlich für Euch nur Pillepalle...
Folgendes Problemlein:
bin nämlich dabei einen Vokabeltrainer zu basteln, funktioniert auch schon soweit. Jetzt möchte ich aber, daß die falschen Antworten in das Tabellenblatt namens "FALSCH" nacheinander eingetragen werden, und die falschen sollen auch möglichst nicht doppelt sein.
Also In A8 steht die Vokabel, in D8 wird die Übersetzung eingegeben, in Zelle E8 erscheint dann das Ergebnis ob richtig oder falsch.

Na, wer weiß es?
Danke im Voraus!
Silvie

Bild


Betrifft: AW: wenn falsch dann zeile kopieren in
von: Jürgen K.
Geschrieben am: 12.11.2003 11:54:33

Hi Silvie,

mal etwas konkreter:

1. Soll nur der falsche Wert, der in D8 steht auf das Blatt übertragen werden, oder auch
die Vokabel, nach der gefragt wurde?
2. Wann soll die Übertragung erfolgen, durch manuelles Auslösen des Makros (Knopf),
oder automatisch nach Eingabe der Antwort, wenn in Zelle D8 das Wort "Falsch"
auftaucht?
3. In welche Spalte auf dem Blatt FALSCH sollen die Begriffe gespeichert werden, A1:An?

Ist eigentlich keine große Aktion,
also sag mal bescheid.

Gruß, Jürgen


Bild


Betrifft: AW: wenn falsch dann zeile kopieren in
von: silvie
Geschrieben am: 12.11.2003 12:02:59

Hallo Jürgen,

Danke schon mal für die Antwort, also
zu 1: es wär gut wenn die Vokabel mit übertragen wird vielleicht auch die ganze Zeile
zu 2: am besten automatisch nach Eingabe der Antwort in D8 (wenn Falsch)
zu 3: Spalte A:C oder so

Gruß
Silvie


Bild


Betrifft: AW: wenn falsch dann zeile kopieren in
von: Jürgen K.
Geschrieben am: 12.11.2003 14:06:50

So, versuchen wir es mal hiermit:

Folgendes wird vorausgesetzt:
1. Das Blatt zur Eingabe der Vokale heist Tabelle1
2. Auf diesem Blatt steht der Vokal in A8, die Antwort wird in D8 manuell eingegeben,
in der Zelle E8 steht in Abhängigkeit der Antwort Richtig! oder Falsch!
3. Das Blatt mit der Auflistung der Fehler heist FALSCH
4. In A1 auf dem Blatt Falsch steht Vokabel (nicht obligatorisch)
5. In B1 auf dem Blatt steht Antwort (nicht obligatorisch)

Dann schließe alle offenen Excel Tabellen, außer dem Vokabeltrainer,
öffne dann mit Alt + F11 die VBA Umgebung.

Jetzt siehst Du normalerweise eine Übersicht mit den aktiven VBA - Projekten. Darin dürfte eigentlich nur VBAProject (PERSONL.XLS) und VBAProject (VOKABELTRAINER.XLS) zu sehen sein.

Unter dem Punkt VBAProject(VOKABELTRAINER.XLS) ist eine Auflistung der darin enthaltenen Blätter. Öffne das Blatt in dem die Eingaben gemacht werden mit einem Doppelklick (Tabelle1 in diesem Beispiel). Wenn es bei Dir anders heist, auch egal, jedenfalls das Eingabeblatt öffnen.

Jetzt müßtest Du eine leere Eingabefläche sehen, über der zwei Pulldown - Menues nebeneinander stehen. In dem linken wählst Du den Begriff Worksheet aus und in dem rechten den Begriff Change.

Jetzt müßte folgendes in dem zuvor leeren Feld stehen:


Private Sub Worksheet_Change(ByVal Target As Range)
Das bedeutet, das der Code, den Du gleich dort hinein kopierts ausgeführt wird, wenn in dem Eingabeblatt etwas verändert wird.
Kopiere jetzt direkt unter die o. g. Zeile diesen Code:
(Hier markieren, kopieren und einfügen)
If Range("E8").Value = "FALSCH!" Then Call FehlerÜbernehmen
End Sub



Das bedeutet, wenn nach der Eingabe in dem Blatt in der Zelle E8 der Wert Falsch! steht, wird das Makro FehlerÜbernehmen ausgeführt.

Dieses Makro mußt Du jetzt noch anlegen...

Klicke mit der RECHTEN Maustaste auf den Eintrag VBAProject(VOKABELTRAINER.XLS), wähle die Option Einfügen und dann den Begriff Modul aus.

Jetzt erscheint ein neuer Ordner (Module) und darunter die darin enthaltenen Module (Modul1, wenn noch keins angelegt war).

Öffne Modul1 mit einem Doppelklick links und füge diesen Code darin ein:
(Hier markieren, kopieren und einfügen)


Sub FehlerÜbernehmen()
Dim Fehler As String
Dim Vokabel As String

Application.ScreenUpdating = False

Vokabel = Range("A8").Value
Fehler = Range("D8").Value

Worksheets("FALSCH").Activate
Range("A1:A1").Select

Do Until ActiveCell.Value = Empty
ActiveCell.Offset(1, 0).Select
If ActiveCell.Value = Vokabel And ActiveCell.Offset(0, 1).Value = Fehler Then
Worksheets("Tabelle1").Activate
Application.ScreenUpdating = True
Exit Sub
End If
Loop
ActiveCell.Value = Vokabel
ActiveCell.Offset(0, 1).Value = Fehler
Worksheets("Tabelle1").Activate
Application.ScreenUpdating = True

End Sub




Das müsste es gewesen sein. Bei mir funktionierts.
Hoffentlich konnte ich behilflich sein.

Gruß, Jürgen


Bild


Betrifft: AW: wenn falsch dann zeile kopieren in
von: silvie
Geschrieben am: 12.11.2003 14:26:09

Hey!!! Es funktioniert, ich werd verrückt!

Klasse!

Danke hoch 10!


Bild

Beiträge aus den Excel-Beispielen zum Thema " wenn falsch dann zeile kopieren in"