Supportnet / Forum / Tabellenkalkulation
Summewenn in VBA mit variablem Bereich
Frage
Hallo Community,
vielleicht könnt Ihr mir bei folgendem Problem (?!) weiterhelfen.
Hab in Excel folgendes Makro :
ActiveSheet.Next.Select
Range("A1").Select
Selection.End(xlToRight).Select
Range("O1").Select
ActiveCell.FormulaR1C1 = "Betrag2"
For n = 2 To Cells(Rows.Count, 1).End(xlUp).Row
Cells(n, 15).Value = Cells(n, 3).Value
Next
ActiveSheet.Previous.Select
Range("A124").Select
ActiveCell.FormulaR1C1 = _
"=SUMIF([b]Tabelle1!R[-121]C[13]:R[-102]C[14][/b],""Abschlag Zahlung"",[i]Tabelle1!R[-121]C[14]:R[-102]C[14][/i])"
End Sub
Jetzt hab ich schon mehrmals versucht, die Formel so anzupassen, dass diese auf den variablen [b]"Bereich" [/b](volle Zellen ab Zeile 2 in Spalte N:O), bzw. für den [i]"Summe_Bereich"[/i] (ab Zeile 2 Spalte O) abzieht, leider, wie schon so oft, ohne Erfolg *grummel*.
Viele Grüße
martl
Antwort 1 von martl
Hallo VBA-Experten,
an dieser Stelle ein nochmaliger Hilfeaufruf an alle SNler. Leider komm ich bei mir mit o.g. Problem nicht weiter, eine baldige Lösung wär jedoch erforderlich.
Hab zwischenzeitlich schon herausgefunden, dass
die R1C1 Formel ähnlich wie Offset* funktioniert, hab aber noch keine Möglichkeit gefunden, die Formel auf einen "fixen" Bereich (über Spalten/Zeilennamen N2:O100 (alternativ O100 als letzte volle Zelle)) abzuändern.
*Anscheinend wird erst die aktuelle Position in der Tabelle ermittelt, und von da an die Zeilen (R) und Spalten (C) zurück/vorgerechnet, und diese Werte in die Formel übergeben:
Tabelle1!R[-121]C[13]:R[-102]C[14],...
bedeutet also von der aktuellen Position (in Tabelle2) wechsel in Tabelle 1, nimm gleiche Zelle wie in Tabelle 2 und gehe 121 Zeilen nach oben und 13 Spalten nach rechts = Beginnposition bis 102 Zeilen von der aktuellen Position nach oben und 14 Spalten nach rechts.
Das Problem ergibt sich, dass sich diese Startzelle jedesmal in einer anderen Zeile befinden kann, (je nach Menge der Daten), somit kann ich o.g. Formel nicht anwenden.
Vielleicht fällt da jemand noch spontan etwas ein oder kann mir noch ein paar Tips geben, wie ich hier bei der Lösungssuche noch weiter vorgehen kann.
Viele Grüße und allen einen schönen Nachmittag
martl
an dieser Stelle ein nochmaliger Hilfeaufruf an alle SNler. Leider komm ich bei mir mit o.g. Problem nicht weiter, eine baldige Lösung wär jedoch erforderlich.
Hab zwischenzeitlich schon herausgefunden, dass
die R1C1 Formel ähnlich wie Offset* funktioniert, hab aber noch keine Möglichkeit gefunden, die Formel auf einen "fixen" Bereich (über Spalten/Zeilennamen N2:O100 (alternativ O100 als letzte volle Zelle)) abzuändern.
*Anscheinend wird erst die aktuelle Position in der Tabelle ermittelt, und von da an die Zeilen (R) und Spalten (C) zurück/vorgerechnet, und diese Werte in die Formel übergeben:
Tabelle1!R[-121]C[13]:R[-102]C[14],...
bedeutet also von der aktuellen Position (in Tabelle2) wechsel in Tabelle 1, nimm gleiche Zelle wie in Tabelle 2 und gehe 121 Zeilen nach oben und 13 Spalten nach rechts = Beginnposition bis 102 Zeilen von der aktuellen Position nach oben und 14 Spalten nach rechts.
Das Problem ergibt sich, dass sich diese Startzelle jedesmal in einer anderen Zeile befinden kann, (je nach Menge der Daten), somit kann ich o.g. Formel nicht anwenden.
Vielleicht fällt da jemand noch spontan etwas ein oder kann mir noch ein paar Tips geben, wie ich hier bei der Lösungssuche noch weiter vorgehen kann.
Viele Grüße und allen einen schönen Nachmittag
martl

