Hallo,
jedoch ändert er mir in der Formel dann immer die Zeilen aus einer anderen Tabelle
Calc macht genau das, was es machen soll:
- Du hast relative Adressierung gewählt (keine Verwendung vom
$
Zeichen
- Du kopierst genau eine Zeile nach unten
- Bei relativer Adressierung sind also alle Zeilennummern um
1
zu erhöhen
und genau das passiert:
-
A4
→ A5
-
AJ10
→ AJ11
-
AJ13
→ AJ14
(Damit auch AJ10:AJ13
→ AJ11:AJ14
)
Woher sollte Calc wissen, dass Du um +4
verschieben willst. Um so etwas zu bewerkstelligen, muss die Formel etwas komplizierter werden um den gewünschten Versatz (Offset, Verschiebung) zu erreichen. Du willst eigentlich diese Formel kopieren:
=IF(A4<>"";SUM(OFFSET($AJ$1;(ROW(A4)-4)*4+9;0;4;1));"")
oder mit deutschen Funktionsnamen:
=WENN(A4<>"";SUMME(VERSCHIEBUNG($AJ$1;(ZEILE(A4)-4)*4+9;0;4;1));"")
Zum besseren Verständnis/Weiterlesen:
- schreibe die Teil-Formel
=(ROW(A4)-4)*4+9
in eine Zelle und kopiere nach unten. Dabei kannst Du erkennen, welche Zahlen damit generiert werden ({9,13,17,21,...}
).
-
LibreOffice Hilfe - VERSCHIEBUNG - damit wählst immer vier Zeilen hohe (vorletzter Parameter
4
) und eine Spalte breite (letzter Parameter 1
) Bereiche aus und die in den Zeilen {10,14,18,22,...}
beginnen.
- LibreOffice Hilfe - Adressen und Bezüge, absolut und relativ
Anmerkungen:
- Den Tabellennamen habe ich jetzt weggelassen: Ersetze in obiger Formel
$AJ$1
durch $'Test'.$AJ$1
falls sich die zu summierenden Werte in der Tabelle Test
befinden
- Des besseren Verständnisses wegen habe ich die Formel auch nicht weiter - wie möglich - verkürzt zu:
=IF(A4<>"";SUM(OFFSET($AJ$1;ROW(A4)*4-7;0;4;1));"")
, weil dabei meiner Meinung nach nicht wirklich klar wird, wie man sich eine solche Formel ableitet.
Ich hoffe, das trägt zum Verständnis bei.