Alle Tabellennamen im Dokument ermitteln

Antwort erstellen


BBCode ist eingeschaltet
[img] ist ausgeschaltet
[url] ist eingeschaltet
Smileys sind ausgeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: Alle Tabellennamen im Dokument ermitteln

Re: Alle Tabellennamen im Dokument ermitteln

von mikeleb » Di, 10.03.2015 09:14

Hallo Karolus,

danke - wieder was gelernt.

Re: Alle Tabellennamen im Dokument ermitteln

von Karolus » Mo, 09.03.2015 23:35

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

von mikeleb » Mo, 09.03.2015 20:46

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

Code: Alles auswählen

=TABNAME(1)
folgendes wird:

Code: Alles auswählen

='TABNAME'(1)
Vielleicht hat ja jemand eine logische Erklärung dafür.

Re: Alle Tabellennamen im Dokument ermitteln

von MisterSonic » So, 08.03.2015 21:03

Hallo, ich hab dies bezüglich eben schon eine Nachricht geschickt... ;)

Re: Alle Tabellennamen im Dokument ermitteln

von mikeleb » So, 08.03.2015 21:00

Hallo,

kannst du die Datei mal hochladen, dann hilft es sich leichter.

Re: Alle Tabellennamen im Dokument ermitteln

von MisterSonic » So, 08.03.2015 20:58

Ja, hab inzwischen sogar die Makrosicherheit auf Niedrig gesetzt, leider ohne erfolg...

Re: Alle Tabellennamen im Dokument ermitteln

von mikeleb » So, 08.03.2015 20:42

Hallo,
nur um sicher zu gehen: Makros sind aktiviert? (Makrosicherheit auf Mittel?)

Re: Alle Tabellennamen im Dokument ermitteln

von MisterSonic » So, 08.03.2015 20:38

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

von Karolus » So, 08.03.2015 20:14

Hallo

Code: Alles auswählen

=TABNAME( ZEILE() )
Karolus

Re: Alle Tabellennamen im Dokument ermitteln

von MisterSonic » So, 08.03.2015 19:47

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

von mikeleb » So, 08.03.2015 19:35

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

von mikeleb » So, 08.03.2015 18:46

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

von mikeleb » So, 08.03.2015 18:00

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

Code: Alles auswählen

=tabname(2)
den Namen des 2. Tabellenblattes (siehe auch meine Beispieldatei mit Aufrufbeispielen).
Dateianhänge
makro tabellennamen.ods
(12.13 KiB) 53-mal heruntergeladen

Alle Tabellennamen im Dokument ermitteln

von MisterSonic » So, 08.03.2015 16:50

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!!

Nach oben