HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Forumbeitrag
Excel-Version des Fragestellers:
2013
Erfahrungslevel des Fragestellers:
Excel gut - VBA bescheiden
Jürgen Osterroth
25.03.2025 16:22:07
AW: Zellen hochzählen und den Verlauf der Werte anzeigen
Hallo Yal,

tut mir leid, dass ich diesen Text womöglich unverständlich formuliert habe.

Ich möchte es nochmal anders versuchen:

Um die Runtersetzung des Scores zu veranlassen, ist einer der beiden SpinButton im unteren Bereich anzuclicken.

Damit soll der Wert in den Zellen D2 (bei Click auf "SpinButton_Heim") oder E2 (bei Click auf "SpinButton_Gast") um 1 gemindert werden. Zusätzlich soll auch der ganz rechte Wert im Historie- Bereich (ab Spalte J in den Zeilen 2 oder 3) um 1 gemindert werden.

Ich hoffe, es ist jetzt besser verständlich.

VG Jürgen
Als Antwort auf diesen Beitrag
Yal
25.03.2025 15:46:26
AW: Zellen hochzählen und den Verlauf der Werte anzeigen
Hallo Jürgen,

kannst Du bitte diesen Satz nochmal laut vorlesen:

"Wenn der untere Teil des Drehfeldes angeclickt wird,
soll neben dem Wert in D2 bzw. E2
der jeweilige letzte,
also der ganz rechte Wert
um 1 gemindert werden.
Eventuell auch mehrmals,
je nach dem, wie oft der untere Teil des Drehfeldes angeclickt wurde.
Der andere Wert in der Spalte soll unverändert bleiben.
"

Wenn Du aufgrund dieses Textes und sonst kein weiteres Wissen, einen Sinn herausfiltern kannst... ich nicht.

Trotzdem einen blinden Versuch...
Const Zelle_Heim = "D2"

Const Zelle_Gast = "E2"
Const Zeile_Prot = "I2"

Private Sub SpinButton_Gast_SpinDown(): VorigeErgebnis_zurückspielen: End Sub
Private Sub SpinButton_Heim_SpinDown(): VorigeErgebnis_zurückspielen: End Sub
Private Sub SpinButton_Gast_SpinUp(): SpielStand_erhöhen Zelle_Gast: End Sub
Private Sub SpinButton_Heim_SpinUp(): SpielStand_erhöhen Zelle_Heim: End Sub

Private Sub SpielStand_erhöhen(ZelleAdresse As String)
With Me.Range(ZelleAdresse)
.Value = .Value + 1
End With
With Me.Range(Zeile_Prot).Offset(0, 100).End(xlToLeft)
.Offset(0, 1).Value = Me.Range(Zelle_Heim).Value
.Offset(1, 1).Value = Me.Range(Zelle_Gast).Value
End With
End Sub

Private Sub VorigeErgebnis_zurückspielen()
With Me.Range(Zeile_Prot).Offset(0, 100).End(xlToLeft)
If .Column = (Me.Range(Zeile_Prot).Column + 1) Then
Me.Range(Zelle_Heim).Value = 0
Me.Range(Zelle_Gast).Value = 0
Else
Me.Range(Zelle_Heim).Value = .Offset(0, -1).Value
Me.Range(Zelle_Gast).Value = .Offset(1, -1).Value
End If
.Resize(2, 1).ClearContents
End With
End Sub


VG
Yal
Folgenachrichten
Antwort auf Beitrag erstellen

Beispieldatei hochladen