Home Office-Hilfe.com - Wir lösen Ihr Problem mit Microsoft Excel, Word, Outlook, PowerPoint, Access gratis Forum Impressum

  VBA: Nur EINMAL +1 Addieren?
Neues Thema eröffnenNeue Antwort erstellen
Autor Nachricht
Birka
Newbie
Newbie


Anmeldedatum: 22.04.2008
Beiträge: 2

BeitragVerfasst am: 22.04.2008, 21:43 Nach oben

Bin ein absoluter VBA Excel-Neuling und komm daher schon bei einer einfachen Sache nicht weiter:
Ich soll in Excel so eine Art "Frage-Antwort-Spiel" erstellen und habe in einer Tabelle insgesamt die 7 Spalten A-G:

A: gibt eine Kategorie an (lz.B. leichte/mittlere/schwere Frage)
B: enthält Fragen
C: Diese Spalte ist versteckt und enthält die zu B zugehörigen Lösungen
D: dort müssen Antworten auf B eingetragen werden
E: soll automatisch anzeigen, ob die Antwort in D der Lösung aus C entspricht ("Richtig") oder falsch ist ("Falsch")
F: zeigt an, wie häufig die jeweilige Frage aus B bereits FALSCH beantwortet wurde
G: zeigt an, wie häufig die jeweilige Frage aus B bereits RICHTIG beantwortet wurde

Nun möchte ich mit Hilfe von VBA erreichen, dass automatisch in der jeweiligen Zeile in F bzw. G zum momentanen Wert +1 dazuaddiert wird, wenn die Antwort "falsch" bzw. "richtig" ist. Bisher sieht mein Code folgendermaßen aus:

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim Antwort As Range
Dim Lösung As Range
Dim wof As Range
Dim Logikwert As Boolean
Set Antwort = ActiveWorkbook.ActiveSheet.Cells(ActiveCell.Row - 1, 4)
Set Lösung = ActiveWorkbook.ActiveSheet.Cells(ActiveCell.Row - 1, 3)
Set wof = ActiveWorkbook.ActiveSheet.Cells(ActiveCell.Row - 1, 5)
Select Case Antwort
Case Is = Lösung
Logikwert = True
wof = "Richtig"
Cells(Target.Row, 7) = Cells(Target.Row, 7) + 1
Case Else
Logikwert = False
wof = "Falsch"
Cells(Target.Row, 6) = Cells(Target.Row, 6) + 1
End Select
End Sub

Hier habe ich das Problem, dass in Zelle G bzw. F nicht nur einmal +1 dazuaddiert wird, sondern unendlich oft, und ich die Prozedur mit ESC schließlich abbrechen muss. Wie kann ich es schaffen, dass nach der einmaligen Addition die Prozedur bereits von selber abgebrochen wird und die nächste Frage beantwortet werden kann?
Soweit ich bisher erfahren habe, hat es irgendetwas mit dem Befehl "If Not Intersect(Target, Range("x:y")) Is Nothing" zu tun, weiß allerdings nicht genau, was der Befehl eigentlich macht und wie ich ihn richtig einbaue, damit er auch funktioniert.
Bin dankbar für jede Hilfe!

Birka
Benutzer-Profile anzeigenPrivate Nachricht senden
schatzi
Moderator
Moderator


Anmeldedatum: 09.12.2006
Beiträge: 5520

BeitragVerfasst am: 22.04.2008, 23:40 Nach oben

Hallo!

Teste mal dies:
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim Antwort As String
Dim Lösung As String
Dim wof As Range
Dim Logikwert As Boolean    'Brauchst du den noch anderswo? Sonst mach ihn weg.
  If Target.Column = 4 Then 'war die Änderung in Spalte D?
  'Alternativ:
  'If Not Intersect(Target, Column(4)) Is Nothing Then
  'heißt: Wenn die Schnittmenge von Target und Spalte D nicht Nichts ist, dann...
    Antwort = Target.Value
    Lösung = Target.Offset(0, -1).Value
    Set wof = Target.Offset(0, 1)
      If Antwort = Lösung Then
        Logikwert = True    'siehe oben
        wof = "Richtig"
        Target.Offset(0, 2) = Target.Offset(0, 2) + 1
      Else
        Logikwert = False   'siehe oben
        wof = "Falsch"
        Target.Offset(0, 3) = Target.Offset(0, 3) + 1
      End If
  End If
End Sub

_________________

Viele Grüße vom Schatzi

------------------------
Dies ist meine Signatur und sie trägt eigentlich nichts zur Lösung deines Problems bei. Sollte sie es dennoch tun, dann bist du definitiv im falschen Forum...Image
Ein Feedback zum ursprünglichen Problem wäre trotzdem nett!
Windows XP, Office2000, Office2007
Benutzer-Profile anzeigenPrivate Nachricht senden
Birka
Newbie
Newbie


Anmeldedatum: 22.04.2008
Beiträge: 2

BeitragVerfasst am: 23.04.2008, 11:48 Nach oben

Vielen Dank! Funktioniert wunderbar jetzt Very Happy
Benutzer-Profile anzeigenPrivate Nachricht senden
Beiträge der letzten Zeit anzeigen:      
Neues Thema eröffnenNeue Antwort erstellen


Ähnliche Beiträge
Thema Autor Forum Antworten Verfasst am
Keine neuen Beiträge Anzahl von doppelten Daten nur einmal... nicopico Microsoft Excel Hilfe 7 26.08.2008, 16:02 Letzten Beitrag anzeigen
Keine neuen Beiträge Werte bei bestimmten Datum vergleiche... AxelF Microsoft Excel Hilfe 6 19.08.2008, 15:23 Letzten Beitrag anzeigen
Keine neuen Beiträge Manuelles Addieren von Zahlen - gibt ... Sophie Microsoft Excel Hilfe 3 18.08.2008, 11:46 Letzten Beitrag anzeigen
Keine neuen Beiträge BUCHSTABE UND ZAHL ADDIEREN nosubject Microsoft Excel Hilfe 2 14.08.2008, 09:58 Letzten Beitrag anzeigen
Keine neuen Beiträge Werte in anderen Mappe suchen und add... prittju Microsoft Excel Hilfe 7 12.06.2008, 04:30 Letzten Beitrag anzeigen


 Gehe zu:   



Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen

Haftungsausschluss/Disclaimer


SMS kostenlos versenden | Battle-Dream | Tuning Forum | Join the YoungGeneration | krankenversicherungsvergleich | Kalorienarme Rezepte!
Versicherungsvergleich | Bürobedarf | Papier | Betten

Ranking-Hits



Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Alle Zeiten sind GMT + 1 Stunde
Deutsche Übersetzung von phpBB.de