ich verzweifle schon seit Tagen vor folgendem Problem:
Ich habe eine Tabelle, die sieht ungefähr folgendermaßen aus:
Spalte 1 Spalte 2
Phase (Summe der darunterliegenden Spalte bis "Phase", also 13)
Tätigkeit1 5
Tätigkeit2 8
Phase (S. d. darunterl. Sp. b. "Phase" (oder max. 100 Zellen), also 19)
Tätigkeit3 17
Tätigkeit4 2
Neben dem Wort Phase steht in Spalte 2 immer die jeweilige Summe der darunter stehenden Zahlen bis das nächste Mal das Wort "Phase" in Spalte 1 steht - oder eine Grenze (z.B. 100 Zellenzeilen durchsucht) erreicht wurde.
Tabellen dieser Art (mit Projektphasen) habe ich auf mehreren Tabellenblätttern.
Gibt es dazu eine "einfache" Lösung mit SummeWenn o.ä. ?
Mein Ansatz war der (in VBA):
Code:
Function SummeBisStopper(myRange)
Const Stopper = "Phase"
Dim zeile As Integer
' Hinweis: In der ersten Spalte muß der "Stopper" stehen
SummeBisStopper = 0
zeile = myRange.Row
While (zeile < (myRange.Row + 100)) And (Cells(zeile, 1) <> Stopper)
If IsNumeric(Cells(zeile, myRange.Column)) Then
SummeBisStopper = SummeBisStopper + Cells(zeile, myRange.Column).Value
End If
zeile = zeile + 1
Wend
End
Function
Wobei ich in "MyRange" einfach einen hohen Wert angeben muß:
Z.B. in der Phasenzeile schreibe ich in Spalte 2 (z.B. in ZelleB1):
=SummeBisStopper(B2:B1000)
damit Excel überhaupt mitbekommt, falls sich in den Werten darunter etwas ändert.
So, mein erstes Problem ist, daß dies unter bestimmten Bedingungen (z.B. Wechsel des Blatts) nicht immer (oder falsch) aktualisiert wird (erst wenn ich wieder einen neuen Wert eintrage, dann stimmt's).
Weiß jemand den Fehler ? (ich hab schon über "SendKeys" eine Symptombekämpfung probiert, aber das kann's ja auch nicht sein... (
Außerdem folgendes interessantes Phänomen: Wenn man "STRG-ALT-F9" drückt, wird zwar das aktuelle Blatt aktualisiert, aber damit werden alle anderen Tabellenblätter auch aktualisiert (und zwar falsch!)
Erst nach Schließen und Wiederöffnen der Arbeitsmappe ist es wieder in Ordnung... kennt das jemand ?
Vielen Dank, bin schon am Verzweifeln !
Johannes