Seite 1 von 1
Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 16:50
von MisterSonic
Hallo,
in meiner Calc Datei habe ich mehrere Tabellen, ganz am Ende werden es aktuell 94 sein. Ich würde nun gern ein eigenes Blatt in der Tabelle anlegen, wo z.B. von Tabelle 1 bis 94 die Namen enthalten sind. Diese Namen möchte ich nicht manuell Eintragen müssen sondern ermitteln lassen. Geht das überhaupt? Hintergrund der Sache ist : ich brauche aus jedem Tabellenblatt die Daten die z.B. in B16 und B19 enthalten sind, um die nicht mit Hand alle einzugeben habe ich gehofft gibt es eine Möglichkeit die Namen dynamisch zu ermitteln und dann z.B. über
=<ermittelter name1>.B16
=<ermittelter name2>.B16
=<ermittelter name3>.B16
in ein eigenes Blatt zu packen.
Ich hoffe ich konnte halbwegs verständlich zum ausdruck bringen was ich vorhabe.

Hat jemand einen Lösungsweg? Bin für jede Hilfe dankbar!!
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 18:00
von mikeleb
Hallo,
das ist eine Aufgabe für Makroprogrammierung. Es gibt (meines Wissens) keine Funktion, die dir den Namen eines bestimmten Tabellenblatts (durch seine Nummer festgelegt) liefert.
Code: Alles auswählen
function tabname (n as integer)
if n<1 or n>thiscomponent.sheets.count then
tabname="#Fehler"
else
tabname=thiscomponent.sheets(n-1).name
end if
end function
Diese Funktion liefert dir über den Aufruf
den Namen des 2. Tabellenblattes (siehe auch meine Beispieldatei mit Aufrufbeispielen).
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 18:46
von mikeleb
Hallo,
1) Lege in deiner Datei ein neues Makromodul an: Extras->Makros->Makros verwalten->Basic. Dort, wenn deine Datei markiert ist: Neu... Ok.
2) Öffne meine Datei, gehe dort in das Modul1 (Extras->Makros->Makros verwalten->Basic, im linken Baum, das Modul auswählen und dann Bearbeiten anklicken).
3) Markiere den gesamten Code, kopieren und in das Modul1 deiner Datei einfügen.
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 19:35
von mikeleb
Hallo,
noch eine Ergänzung:
Wenn du das Makro nicht in deiner Datei, sondern unter
->Makros ->Meine Makros-> Standard
ablegst, steht dir die Funktion in all deinen Dateien zur Verfügung. Auf anderen Rechner allerdings nicht.
Da könntest allerdings nachdem du deine 94 Tabellenblätter angelegt hast, die Namen einmalig erstellen (über die Funktion) und dann per Markieren, Kopieren, Inhalte einfügen (-> Text, keine Formeln) als Texte in deine Übersichtstabelle einfügen. Damit wäre die fertige Datei nicht mehr an das Makro gebunden.
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 19:47
von MisterSonic
Das hat soweit schon ganz gut funktioniert VIELEN DANK DAFÜR!!! (Ehrlich zugegeben ... allein hätte ich das nie geschafft.)
Hast Du jetzt noch eine Idee wie ich alle Tabs untereinander gelistet bekomme, ohne alles einzeln zu schreiben =TABNAME(1) , =TABNAME(2) ..... ?? Wenn ich es kopiere wird leider immer =Tabname(1) eingefügt ...
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 20:14
von Karolus
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 20:38
von MisterSonic
Danke!!!
Leider ist nun nach dem erneuten öffnen das Blatt mit den Tabnamen leider voller fehler ...
Aus =TABNAME(1)
wird jetzt automatisch (auch wenn ich es wieder änderen)
='TABNAME(1)' gemacht ... wenn ich in die Makroverwaltung schaue ist das Makro jedoch in der Datei drin ...

Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 20:42
von mikeleb
Hallo,
nur um sicher zu gehen: Makros sind aktiviert? (Makrosicherheit auf Mittel?)
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 20:58
von MisterSonic
Ja, hab inzwischen sogar die Makrosicherheit auf Niedrig gesetzt, leider ohne erfolg...
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 21:00
von mikeleb
Hallo,
kannst du die Datei mal hochladen, dann hilft es sich leichter.
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: So, 08.03.2015 21:03
von MisterSonic
Hallo, ich hab dies bezüglich eben schon eine Nachricht geschickt...

Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: Mo, 09.03.2015 20:46
von mikeleb
Hallo,
das Problem ist mittlerweile gelöst.
Aus =TABNAME(1)
wird jetzt automatisch (auch wenn ich es wieder änderen)
='TABNAME(1)' gemacht
Die Ursache dafür war, dass eine Zelle (A1) auf dem tabellenblatt den Inhalt "Tabname" (als Text) hatte. Aus irgendwelchen Gründen führt das unter AOO4.4.1 zu dem seltsamen Verhalten, dass aus der Eingabe
folgendes wird:
Vielleicht hat ja jemand eine logische Erklärung dafür.
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: Mo, 09.03.2015 23:35
von Karolus
Hallo
Vielleicht hat ja jemand eine logische Erklärung dafür.
Ja, es resultiert aus →Extras→Optionen|Einstellungen→Calc→Berechnen→
[x]Spalten-|Zeilenbeschriftungen automatisch suchen
Re: Alle Tabellennamen im Dokument ermitteln
Verfasst: Di, 10.03.2015 09:14
von mikeleb
Hallo Karolus,
danke - wieder was gelernt.