Anzeige
Archiv - Navigation
900to904
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
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Summe????

Summe?
24.08.2007 13:33:00
Julia
Hallo
eine Frage:
Ich habe einen Wert in Zelle J3
Hier ist immer eine unterschiedliche Punktzahl drin
In Spalte B3 oder C3 will ich einen Wert eintragen. Wenn ich einen Wert in B3 eintrage soll C3 automatisch berechnet und eingetragen werden. Wenn ich einen Wert in C3 eintrage soll B3 automatisch berechnet und eingetragen werden.
Die Berechnung des fehlenden Felds ist immer die Punktzahl aus Zelle J3 minus der Wert aus B3 oder C3
Wie kann ich das realisieren?
Ist das auch möglich wenn ich noch ein zusätzliches Feld integriere. z.B. D3. Hier muss ich dann 2 Werte vorgeben und der 3. Wert wird wieder berechnet. J3 minus die anderen 2 Werte
Gruß Julia

15
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Summe?
24.08.2007 13:39:00
Peter
Mit Formeln geht das wohl nicht, denn durch die Eingabe von Werten in B3 oder C3 würdest Du die darin enthaltenen Formeln ja überschreiben. Es sei denn, Du möchtest nur in B3 Werte eingeben und das Ergebnis dann immer in C3 erhalten.
Gruß, Peter

AW: Summe?
24.08.2007 13:40:00
Julia
gibt es keine Lösung, es ist ein Kartenspiel und ich weiss nicht ob ich jetzt die Punkte in B3 oder C3 eintrage.
Das ist immer abhängig vom Spielverlauf
Kann man das über Hilfszellen lösen?
Oder irgendiwe anders?

AW: Summe?
24.08.2007 13:41:53
Reinhard
Hi Julia,

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fehler
Application.EnableEvents = False
Select Case Target.Address(0, 0)
Case "B3"
Range("C3").Value = Range("J3").Value - Range("B3").Value
Case "C3"
Range("B3").Value = Range("J3").Value - Range("C3").Value
End Select
Fehler:
Application.EnableEvents = True
End Sub

Gruß
Reinhard

Anzeige
AW: Summe?
24.08.2007 13:45:00
Julia
Danke Reinhard für die Zeile 3 klappt das super
Jede Zeile stellt eine Runde dar. ein Spiel kann mehrere Runden haben
Wie kann ich das machen das dieser Code bei jeder Zeile funktionier?
D.h. in Zeile 4 ist in J4 die Gesamtpunktzahl und in B oder C 4 wird dann was eingetragen
Das geht so bis Zeile 36

AW: Summe?
24.08.2007 13:52:00
Reinhard
Hi Julia,

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column  2 And Target.Column  3 Then Exit Sub
If Target.Row  36 Then Exit Sub
If Target.Cells.Count > 1 Then Exit Sub
On Error GoTo Fehler
Application.EnableEvents = False
If Target.Column = 2 Then
Range("C" & Target.Row).Value = Range("J3").Value - Range("B" & Target.Row)
Else
Range("B" & Target.Row).Value = Range("J3").Value - Range("C" & Target.Row)
End If
Fehler:
Application.EnableEvents = True
End Sub

Gruß
Reinhard

Anzeige
AW: Summe?
24.08.2007 13:57:33
Julia
Perfekt funktioniert prima :)
Ich hoffe ich bin nicht frech wenn ich nach dem Code für 3 Werte frage :)
Also es werden definttiv 2 Werte eingetragen. Und der 3. Wert wird dann brechnet. Ob ich jetzt die beiden Werte in die Zelle B,C oder D eintrage ist wiederum abhängig vom Spielverlauf
Kann ich da den selben Code nutzen oder öndert sich da jetzt was?
Nochmal vieeeelen Dank ;)

AW: Summe?
24.08.2007 14:01:00
Julia
Ups sorry Reinhard aber ein Fehler ist mir gerade aufgefallen
Jede Zeile bezieht sich im Code immer auf die Gesamtpunkzahl in Zelle J3
Aber in jeder neuen Runde bezieht sich das Spiel auf eine neue Gesamtpunkzahl
D.H bin ich in Zeile 4 brauch ich die Gesamtpunktzahl aus J4
bin ich in Zeile 8 brauch ich die Gesamtpunktzahl aus J8
usw.

Anzeige
AW: Summe?
24.08.2007 14:11:00
Reinhard
Hi Julia,

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column  2 And Target.Column  3 Then Exit Sub
If Target.Row  36 Then Exit Sub
If Target.Cells.Count > 1 Then Exit Sub
On Error GoTo Fehler
Application.EnableEvents = False
If Target.Column = 2 Then
Range("C" & Target.Row).Value = Range("J" & Target.Row).Value - Range("B" & Target.Row). _
Value
Else
Range("B" & Target.Row).Value = Range("J" & Target.Row).Value - Range("C" & Target.Row). _
Value
End If
Fehler:
Application.EnableEvents = True
End Sub


Aber Code ist ja durch die neue Anfrage Geschichte.
Da fehlen aber noch einige Infos. B5,C5,D5 sind leer, in B5 wird ein Wert eingegebn, was soll geschehen? Nichts?
Danach wird in D5 ein Wert eingegebn, soll dann in C5 das Ergebnis aus J5-B5-D5 erscheinen?
Was soll geschehen wenn du nun den Wert in B5 löschtst oder änderst?
Gruß
Reinhard

Anzeige
AW: Summe?
24.08.2007 14:44:00
Julia
Hallo Reinhard
das sind 2 verschiedene Tabellen
d.h. wenn ich Spalte B und C habe machen 2 Spieler mit
wenn ich B,C und D habe sind es 3 Spieler
Sind 2 unterschiedliche Excel Dateien
Für 2 Spieler hat es ja perfekt funktioniert nur das sich jede Zeile immer auf J3 bezogen hat
Weisst du wie ich das meine?

AW: Summe?
24.08.2007 19:37:00
Reinhard
Hi Julia,
einen neuen Thread zu beginnen, ohne den Hinweis auf den alten ist nicht nett :-(
"Für 2 Spieler hat es ja perfekt funktioniert nur das sich jede Zeile immer auf J3 bezogen hat"
Ist doch im neuen Code korrigiert!
"Weisst du wie ich das meine?"
Ich wüßte das ggfs. besser wenn du meine Nachfragen informativ beantwortest hättest.
Gruß
Reinhard

Anzeige
Keine Antwort ist auch eine Antwort :-( o.w.T.
28.08.2007 17:04:00
Reinhard

AW: Summe?
24.08.2007 14:53:05
Julia
Also mit diesem Code klappt es für 2 Spieler wunderbar
Wenn es jetzt noch mit den 3 Spielern klappt wäre das genail ;)
Gruß Julia

AW: Demnächst nochmals in diesem Theater?
24.08.2007 15:28:25
Julia
Tut mir leid das ich das Thema neu aufgemacht habe
Letztens hatt es nicht geklappt
Heute hat es schon suoer geklappt
Nur mit den 3 Spielern funktioniert es noch nicht

Anzeige
AW: Summe?
28.08.2007 09:26:00
Wuxinese
Hallo Julia,
ich hoffe, dass diese Loesung nun funktioniert und dass Du auch kurz Feedback gibst. Ich habe den Code von Reinhard fuer die 2-Spieler-Variante uebernommen (nur ein "AND" durch ein "OR" ersetzt) und habe den dann fuer die 3-Spieler-Variante ausgebaut.
Im Code fuers 2-Spieler Worksheet sollte stehen:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column  2 And Target.Column  3 Then Exit Sub
If Target.Row  36 Then Exit Sub
If Target.Cells.Count > 1 Then Exit Sub
On Error GoTo Fehler
Application.EnableEvents = False
If Target.Column = 2 Then
Range("C" & Target.Row).Value = Range("J" & Target.Row).Value - Range("B" & Target.Row). _
Value
Else
Range("B" & Target.Row).Value = Range("J" & Target.Row).Value - Range("C" & Target.Row). _
Value
End If
Fehler:
Application.EnableEvents = True
End Sub


Und im Code fuers 3-Spieler Worksheet:


Private Sub Worksheet_Change(ByVal Target As Range)
If Not (Target.Column > 1 And Target.Column  36 Then Exit Sub
If Target.Cells.Count > 1 Then Exit Sub
On Error GoTo Fehler
Application.EnableEvents = False
If Target.Column = 2 And Not (IsEmpty(Cells(Target.Row, 3)) And IsEmpty(Cells(Target.Row, 4) _
)) Then
If IsEmpty(Cells(Target.Row, 3)) Then
Range("C" & Target.Row).Value = Range("J" & Target.Row).Value - _
Range("B" & Target.Row).Value - Range("d" & Target.Row).Value
Else
Range("d" & Target.Row).Value = Range("J" & Target.Row).Value - _
Range("B" & Target.Row).Value - Range("c" & Target.Row).Value
End If
ElseIf Target.Column = 3 And Not (IsEmpty(Cells(Target.Row, 2)) And IsEmpty(Cells(Target. _
Row, 4))) Then
If IsEmpty(Cells(Target.Row, 2)) Then
Range("B" & Target.Row).Value = Range("J" & Target.Row).Value - _
Range("c" & Target.Row).Value - Range("d" & Target.Row).Value
Else
Range("d" & Target.Row).Value = Range("J" & Target.Row).Value - _
Range("B" & Target.Row).Value - Range("c" & Target.Row).Value
End If
ElseIf Target.Column = 4 And Not (IsEmpty(Cells(Target.Row, 2)) And IsEmpty(Cells(Target. _
Row, 3))) Then
If IsEmpty(Cells(Target.Row, 2)) Then
Range("B" & Target.Row).Value = Range("J" & Target.Row).Value - _
Range("c" & Target.Row).Value - Range("d" & Target.Row).Value
Else
Range("c" & Target.Row).Value = Range("J" & Target.Row).Value - _
Range("B" & Target.Row).Value - Range("d" & Target.Row).Value
End If
End If
Fehler:
Application.EnableEvents = True
End Sub


Kann man das auch zu viert spielen? Wann lernt alle Welt endlich richtig Schafkopfen, dann braucht man keine so komplizierten Dinge mehr ;-)
Gruss
Rainer

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige