12.08.2020, 12:11
Hallo zusammen,
ich hoffe jemand kann mir bei meinem Problemchen helfen. Der ursprüngliche Macro kam auch schon aus diesem Forum (Flexiblen Maximalwert speichern) der macht aber nicht ganz das was er soll. Doch zuerst etwas Prosa
Ich habe ein Excel-File mit mehreren Tabellen.
- 3 Tabellen haben den Namen Wert1-Wert3. Hier steht immer in der Zelle B1 die Summe der Zahlen in der Spalte C. Diese Summe wird mit =SUMME(C:C) gebildet.
- eine Tabelle dient als Cockpit und gibt eine Übersicht hier werden in den Zellen D23-D25 die Summen aus den oberen 3 Tabellen übernommen.
- in der Zelle D5 wird mit =SUMME(D23:D25) der Gesamtwert der 3 Tabellen berechnet.
- in der Zelle D6 steht ein Wert, der manuell geändert werden kann
- In der Zeile D7 steht die Summe aus D5 und D6 (=SUMME(D5:D6))
Soweit das Setup. Nun soll der Maximalwert von D7 in der Zelle D8 gespeichert werden. Hierzu benutze ich diesen Macro:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("d4:d6")) Is Nothing Then Exit Sub 'im Bereich D4-D6 werden Eintragungen gemacht
Range("d8") = Application.Max(Range("d8"), Range("d7")) 'in Zelle D8 wird immer der Max Wert aus D7 und D8 festgehalten
End Sub
Das Kuriose ist das alles perfekt funktioniert wenn der manuelle Wert geändert wird. Ändert sich jedoch der Summen-Wert in D5 weigert sich der Macro das umzusetzen. Überschreibe ich die Formel funktioniert es wieder. Nun stehe ich sehr ratlos da, zumal in D7 auch eine Summe auf der gleichen Art gebildet wird aber dort funktioniert es. Hat jemand eine Idee/Lösung für mich?
Damit man das besser nachvollziehen kann habe ich File als Attachment eingefügt.
Schon jetzt mal Danke. Ach ja, da ich kaum Ahnung von VBA habe sind alle Erklärungen mega willkommen :19:
Gruß
Heiko
ich hoffe jemand kann mir bei meinem Problemchen helfen. Der ursprüngliche Macro kam auch schon aus diesem Forum (Flexiblen Maximalwert speichern) der macht aber nicht ganz das was er soll. Doch zuerst etwas Prosa
Ich habe ein Excel-File mit mehreren Tabellen.
- 3 Tabellen haben den Namen Wert1-Wert3. Hier steht immer in der Zelle B1 die Summe der Zahlen in der Spalte C. Diese Summe wird mit =SUMME(C:C) gebildet.
- eine Tabelle dient als Cockpit und gibt eine Übersicht hier werden in den Zellen D23-D25 die Summen aus den oberen 3 Tabellen übernommen.
- in der Zelle D5 wird mit =SUMME(D23:D25) der Gesamtwert der 3 Tabellen berechnet.
- in der Zelle D6 steht ein Wert, der manuell geändert werden kann
- In der Zeile D7 steht die Summe aus D5 und D6 (=SUMME(D5:D6))
Soweit das Setup. Nun soll der Maximalwert von D7 in der Zelle D8 gespeichert werden. Hierzu benutze ich diesen Macro:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("d4:d6")) Is Nothing Then Exit Sub 'im Bereich D4-D6 werden Eintragungen gemacht
Range("d8") = Application.Max(Range("d8"), Range("d7")) 'in Zelle D8 wird immer der Max Wert aus D7 und D8 festgehalten
End Sub
Das Kuriose ist das alles perfekt funktioniert wenn der manuelle Wert geändert wird. Ändert sich jedoch der Summen-Wert in D5 weigert sich der Macro das umzusetzen. Überschreibe ich die Formel funktioniert es wieder. Nun stehe ich sehr ratlos da, zumal in D7 auch eine Summe auf der gleichen Art gebildet wird aber dort funktioniert es. Hat jemand eine Idee/Lösung für mich?
Damit man das besser nachvollziehen kann habe ich File als Attachment eingefügt.
Schon jetzt mal Danke. Ach ja, da ich kaum Ahnung von VBA habe sind alle Erklärungen mega willkommen :19:
Gruß
Heiko