🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ 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. 🤗

[GELÖST] Tabellenname einer anderen Tabelle einfügen

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
wartburgritter
Beiträge: 101
Registriert: Di 13. Nov 2012, 18:28

[GELÖST] Tabellenname einer anderen Tabelle einfügen

Beitrag von wartburgritter » Mi 12. Nov 2014, 16:49

Ich habe ein Calcdokument mit 4 Tabellen. In der 4. Tabelle möchte ich die Tabellennamen der anderen 3 Tabellen in zellen einfügen. Habe nur gefunden wie ich den Tabellennamen der aktuellen Tabelle einfügen kann.

http://www.der-lifehacker.de/2011/04/li ... en-lassen/

Hab versucht das auf die anderen Tabellen zu erweitern, aber keinen Erfolg gehabt.

gruss bernd
Zuletzt geändert von wartburgritter am Fr 12. Jun 2015, 12:18, insgesamt 2-mal geändert.

Benutzeravatar
lorbass
* LO-Experte *
Beiträge: 627
Registriert: Mo 25. Apr 2011, 18:17

Re: Tabellenname einer anderen Tabelle einfügen

Beitrag von lorbass » Mi 12. Nov 2014, 17:42

Ich fürchte, du wirst dich mit der Aufgabe an die Kollegen im Bereich LibreOffice Programmierung wenden müssen.

Gruß
lorbass

lessger
Beiträge: 249
Registriert: Fr 4. Mai 2012, 13:33

Re: Tabellenname einer anderen Tabelle einfügen

Beitrag von lessger » Mi 12. Nov 2014, 18:18

Hallo Wartburgritter,

wenn Du wirklich nur den Tabellennamen extrahieren willst, kannst Du folgende Formel nutzen:

Code: Alles auswählen

=WECHSELN(LINKS(ZELLE("Adresse";TabelleX.A1);FINDEN(".";ZELLE("Adresse";TabelleX.A1))-1);"$";"")
TabelleX.A1 ist dabei durch einen beliebigen Bezug in die gewünschte Tabelle zu ersetzen (an beiden Stellen).

Du kannst aber auch schlicht den Tabellennamen reinschreiben. Der einzige Vorteil der Formel ist, daß sich der Name aktualisiert, wenn Du das Tabellenblatt umbenennst.

Grüße
Gerhard
LibreOffice 5.4.6.2 / Windows 10 64Bit / WIndows 10 32Bit

Benutzeravatar
lorbass
* LO-Experte *
Beiträge: 627
Registriert: Mo 25. Apr 2011, 18:17

Re: Tabellenname einer anderen Tabelle einfügen

Beitrag von lorbass » Mi 12. Nov 2014, 18:40

lessger hat geschrieben:TabelleX.A1 ist dabei durch einen beliebigen Bezug in die gewünschte Tabelle zu ersetzen (an beiden Stellen).
Aha, du ermittelst also den Tabellennamen, indem du ihn in die Lösungsformel schreibst. Da muss man erst mal drauf kommen… Nur ist der Name ja dummerweise lt. Aufgabenstellung gar nicht bekannt.

Gruß
lorbass

lessger
Beiträge: 249
Registriert: Fr 4. Mai 2012, 13:33

Re: Tabellenname einer anderen Tabelle einfügen

Beitrag von lessger » Mi 12. Nov 2014, 19:18

Nein, lorbass, ich schreibe Ihn nicht rein, sondern ich benutze eine Referenz in die Tabelle und LO schreibt Ihn rein.

Das funktioniert nur dann nicht, wenn es die Tabelle noch gar nicht gibt. Dann wüßte ich aber auch nicht, wie das mit einem Makro zu lösen wäre.

Natürlich ist es einfacher den Tabellennamen direkt reinzuschreiben. Außer, er ändert sich während der weiteren Bearbeitung. Mit der genannten Vorgehensweise wird er dann automatisch aktualisiert, da LO die Zellreferenzen aktualisiert. Beim Eintragen des Tabellennamens als Text von Hand würde er nicht aktualisiert.

Welches Problem der Threadersteller genau lösen will, ist der kurzen Beschreibung halt nicht zu entnehmen. Also möge er selber gucken, ob er die Lösung brauchen kann.

Grüße
Gerhard
LibreOffice 5.4.6.2 / Windows 10 64Bit / WIndows 10 32Bit

wartburgritter
Beiträge: 101
Registriert: Di 13. Nov 2012, 18:28

Re: Tabellenname einer anderen Tabelle einfügen

Beitrag von wartburgritter » Mi 12. Nov 2014, 20:03

lessger hat geschrieben:

Code: Alles auswählen

=WECHSELN(LINKS(ZELLE("Adresse";TabelleX.A1);FINDEN(".";ZELLE("Adresse";TabelleX.A1))-1);"$";"")
TabelleX.A1 ist dabei durch einen beliebigen Bezug in die gewünschte Tabelle zu ersetzen (an beiden Stellen).
Danke
lessger hat geschrieben:Der einzige Vorteil der Formel ist, daß sich der Name aktualisiert, wenn Du das Tabellenblatt umbenennst.
Genau darum geht es.

Allerdings aktualisieren sich die Zellen nicht, auch nicht nach Extras --> Zellinhalte neu berechnen.
Wird das Dokument gespeichert, geschlossen und wieder geöffnet sind die Tabellennamen in den Zellen aktualisiert. Funktioniert sogar mit Leerzeichen !!!

Vielen Dank, grüsse Bernd

lessger
Beiträge: 249
Registriert: Fr 4. Mai 2012, 13:33

Re: [gelöst] Tabellenname einer anderen Tabelle einfügen

Beitrag von lessger » Mi 12. Nov 2014, 20:57

Bei automatischer Neuberechnung werden nur ausgewählte Zellen neu berechnet. Nämlich die, von denen Calc meint, sie wären von der Änderung betroffen. Die Beispielformel würde neu berechnet, wenn sich Zelle TabelleX.A1 ändert. Mit Strg+Umschalt+F9 wird alles neu berechnet. Versuch mal das.

Wenn's wirklich ganz automatisch gehen soll:

Du kannst in der Formel ZUFALLSZAHL oder JETZT unterzubringen. Aber dann wird die eh schon lange Formel noch "gruseliger".

Z.B.:

Code: Alles auswählen

=WENN(JETZT()>0;WECHSELN(LINKS(ZELLE("Adresse";TabelleX.A1);FINDEN(".";ZELLE("Adresse";TabelleX.A1))-1);"$";""))
Erläuterung: einige Funktionen (JETZT(), ZUFALLSZAHL()) lösen immer eine neu Berechnung aus. Und JETZT() ist immer größer 0, beeinflußt also das Ergebnis der Formel nicht.

Oder Du schreibst eine Funktion wie JETZT() in die referenzierte Zelle (also hier TabelleX.A1). Gleiches Prinzip.

Übrigens funktioniert die Formel nicht, wenn Du einen "." im Tabellennamen hast. Die Formel nutzt nämlich den ersten Punkt um das Ende des Tabellennamens zu finden. Wenn das ein Problem ist, mußt Du ein anderes Kriterium nutzen. Z.B. ".$" (erster Parameter von FINDEN):

Code: Alles auswählen

WECHSELN(LINKS(ZELLE("Adresse";TabelleX.A1);FINDEN(".$";ZELLE("Adresse";TabelleX.A1))-1);"$";"")
Aber auch das geht schief, wenn ".$" im Tabellennamen vorkommt.

Grüße
Gerhard
Zuletzt geändert von lessger am Do 13. Nov 2014, 13:30, insgesamt 1-mal geändert.
LibreOffice 5.4.6.2 / Windows 10 64Bit / WIndows 10 32Bit

wartburgritter
Beiträge: 101
Registriert: Di 13. Nov 2012, 18:28

Re: [gelöst] Tabellenname einer anderen Tabelle einfügen

Beitrag von wartburgritter » Do 13. Nov 2014, 09:03

lessger hat geschrieben:... Mit Strg+Umschalt+F9 wird alles neu berechnet. Versuch mal das...
Funktioniert, Sehr gut !

Danke für die weiteren Tipps und die Erläuterungen. Gruss Bernd !


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