Hallo Mase,
vielen Dank. Jetzt kommen wir der Sache näher. Im Array habe ich keine Werte mit Null. Es steht "Leer" bei nicht ausgefüllten "Zellen."
Zur Aufgabenstellung dieses Teils: Es soll ermittelt werden wieviel Planungen zur Bauwerkssanierung in einem Jahr beginnen, laufen und wieviel Bauwerke saniert werden. Dazu soll gezählt werden, in wie vielen Zeilen Finanzmittel im jeweiligen Jahr (Jahr entspricht einer Spalte) existieren. Wenn im Jahr davor die Zelle "Leer" ist, muss eine Planung beginnen ansonsten muss diese schon laufen. Indem ich nach Sanierung suche, kann ich die Anzahl der zu sanierenden Bauwerke im jeweiligen Jahr bestimmen. Gleichzeitig möchte ich die Summen je Zeile (Kosten je Bauwerk) und Spalte (Mittel pro Jahr erforderlich) ermitteln. SIEHE AUCH DIE VEREINFACHTE TABELLE https://www.vba-forum.de/View.aspx?ziel=72193-Excel_VBA_String_in_Spalte_finden_und_Ausgabe_als_logisches_Array
Wenn ich deinen Code anpasse und ausführe erhalte ich für den den erste Ausdruck im Direktbereich kk zurück, den zweiten und dritten immer "Fehler 2029" und für die vierte und fünfte leider immer nur "0".
For kk = 5 To 10
With Application
Debug.Print "Ergebis Spalten 5 bis 10 aus Zeile " & kk
Debug.Print .Sum(.Index(Position(), kk, Evaluate("rows(kk)")))
Debug.Print .Sum(.Index(Position(), kk, Evaluate("colums(kk)")))
Debug.Print .Count(.Index(Position(), kk, Evaluate("colums(kk)")))
Debug.Print .Count(.Index(Position(), kk, Evaluate("rows(kk)")))
End With
Next kk
Das ich statt Sum Count verwenden konnte und VBA nicht meckert, werte ich schon mal als Erfolg.
|