❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Feldwert als Feldadresse in Formel

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
TheJJJ42
Beiträge: 3
Registriert: Di 21. Dez 2021, 03:37

Feldwert als Feldadresse in Formel

Beitrag von TheJJJ42 » Di 21. Dez 2021, 04:11

Hi
Ich habe diverse Formeln, die immer wieder auf verschiedene Datenabschnitte angewendet werden sollen.
Jetzt würde ich gern in einem Feld angeben, für welchen Datenbereich alle Formeln eines Tabellenblatts gelten sollen.

Tabellenblatt 1 enthält 10.000 Zeilen.
Alle Formeln auf den folgenden Tabellenblättern sollen nur Abschnitte davon verwenden.
Tabellenblatt 2 soll beispielsweise die Zeilen 1 - 2397 betrachten.
Hier würde ich gern in A1 und A2 eintragen:1 und 2397.
Alle Formeln auf der Seite sollen sich dann bei A1 und A2 bedienen:
= SUMME(A[Wert von A1]:A[Wert von A2])

So bräuchte ich auf allen Tabellenblättern nur 2 Zahlen anzugeben statt dutzende Formeln zu ändern.

Mondblatt24
* LO-Experte *
Beiträge: 3378
Registriert: Fr 3. Mär 2017, 17:12

Re: Feldwert als Feldadresse in Formel

Beitrag von Mondblatt24 » Di 21. Dez 2021, 05:34

Hallo,
TheJJJ42 hat geschrieben:
Di 21. Dez 2021, 04:11
= SUMME(A[Wert von A1]:A[Wert von A2])
=SUMME(INDIREKT("A"&A1):INDIREKT("A"&A2))
Win 11 (x64) ▪ LO 25.8.1.1 (x64) ▪ AOO Portable 4.1.15
Wenn Eure Frage zutreffend beantwortet wurde, seid so nett und fügt dem Betreff der Eingangsfrage [GELÖST] hinzu.

TheJJJ42
Beiträge: 3
Registriert: Di 21. Dez 2021, 03:37

Re: Feldwert als Feldadresse in Formel

Beitrag von TheJJJ42 » Di 21. Dez 2021, 10:35

Vielen Dank!

Da ich das gleiche Problem in google Tabellen hatte, erhielt ich dort die Antwort, dass man INDIREKT möglichst vermeiden soll und lieber INDEX verwenden.
Dies gibt es auch für LibreOffice:

https://help.libreoffice.org/4.4/Calc/S ... s/de#INDEX

Wünsche schöne Weihnachten

Mondblatt24
* LO-Experte *
Beiträge: 3378
Registriert: Fr 3. Mär 2017, 17:12

Re: Feldwert als Feldadresse in Formel

Beitrag von Mondblatt24 » Di 21. Dez 2021, 12:57

Antwort zurückgezogen.
Zuletzt geändert von Mondblatt24 am Di 21. Dez 2021, 19:30, insgesamt 3-mal geändert.
Win 11 (x64) ▪ LO 25.8.1.1 (x64) ▪ AOO Portable 4.1.15
Wenn Eure Frage zutreffend beantwortet wurde, seid so nett und fügt dem Betreff der Eingangsfrage [GELÖST] hinzu.

Helmut_S
* LO-Experte *
Beiträge: 757
Registriert: Di 9. Feb 2016, 19:27

Re: Feldwert als Feldadresse in Formel

Beitrag von Helmut_S » Di 21. Dez 2021, 17:45

Hallo TheJJJ42, weil grad Weihnachten ist, anbei etwas selbst-gebasteltes zur Bescherung ;)
Nach dem Vorschlag von @Mondblatt23.
Die bedingte Formatierung dient nur zur Kontrolle was da zusammen gezählt wird.
Gruß und frohe Weihnachten, Helmut
Dateianhänge
Verschiebung.ods
(13.46 KiB) 135-mal heruntergeladen
MX-Linux KDE + Linux-Mint Cinnamon

mikele
* LO-Experte *
Beiträge: 1948
Registriert: Mo 1. Aug 2011, 20:51

Re: Feldwert als Feldadresse in Formel

Beitrag von mikele » Di 21. Dez 2021, 21:06

Hallo,
das vermeiden von INDIREKT() hat den Hintergrund, dass diese Funktion volantil ist, also immer neu berechnet wird, wenn irgendwo etwas geändert wird (egal ob die Funktion gerade davon betroffen ist oder nicht).
INDEX() ist nicht volantil, wird also nur dann neu berechnet, wenn sich in einer Zelle auf die sich diese Funktion bezieht etwas ändert. Damit hat dieses Variante einigen Performancevorteil bei umfangreichen Tabellen.
Leider ist auch VERSCHIEBUNG() volantil, sodass ein Wechsel auf diese Funktion bzgl. Perfomance nichts bringt.
Du kannst deine Summe aber per INDEX() bilden.
Die Zahlen mögen sich in Tabelle1 Spalte A befinden. In z. B. Tabelle2 steht in A1 der Wert 1000 und in B1 der Wert 2000.
Mit

Code: Alles auswählen

=SUMME(INDEX(Tabelle1.A:A;A1):INDEX(Tabelle1.A:A;B1))
wird in nun der Bereich Tabelle1.A1000:A2000 summiert.
(Ich bin immer wieder fasziniert, dass dieser Syntax INDEX():INDEX() funktioniert, sprich in dieser Konstruktion den Bereich liefert, wohingegen INDEX() allein den Wert der jeweiligen Zelle liefert)
edit: In der Hilfe steht ja eindeutig: "Je nach Kontext ergibt INDEX einen Bezug oder Inhalt." :shock:
Gruß,
mikele

TheJJJ42
Beiträge: 3
Registriert: Di 21. Dez 2021, 03:37

Re: Feldwert als Feldadresse in Formel

Beitrag von TheJJJ42 » Di 4. Jan 2022, 00:40

Hey Leute, ihr seid echt die Wucht!

@mikele: dein Beispiel trifft es nicht nur auf den Kopf, sondern löst mein nächstes Problem gleich mit. :-))

@Helmut_S: man, diese bedingte Formatierung in deinem Beispiel ist wirklich praktisch. Sobald ich das durchblicke, werde ich es in diverse Dokumente integrieren, wo es leicht zu Fehlern kommt.

Wünsche schönes 2022!


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten