Excel 2007: Dateinamen über Formel anzeigen

Salu Hallo Kollegen, :wink:

gibt es eine Möglichkeit, den Namen (bzw. Pfad) einer Excel-Mappe via Formel einzubinden? Die Funktion

=TEIL(ZELLE("Dateiname");FINDEN("[";ZELLE("Dateiname"))+1;FINDEN("]";ZELLE("Dateiname"))-FINDEN("[";ZELLE("Dateiname"))-1)

gibt leider immer den Namen der aktiven Datei zurück, nicht den der eigenen Mappe.

Viele Grüße :o)
-Rob.

Wenn Du mit Mappe das aktuelle Tabellenblatt meinst :

=TEIL(ZELLE(„Dateiname“);FINDEN("]";ZELLE(„Dateiname“))+1;LÄNGE(ZELLE(„Dateiname“))-FINDEN("]";ZELLE(„Dateiname“)))

Hallo Rob,

ich hätte sehr oft einen relativen Bezug zum Namen einer Mappe gebraucht, um Formeln in eine eigene Mappe auszulagern. Ich bin sicher sehr gut im Excel, aber ich habe das leider nie gefunden. Deshalb gehe ich - ohne Gewährleistung - davon aus, daß Excel das nicht kann.

Frag doch sicherheitshalber nochmal in einem der Excel-Foren nach.

Liebe Grüße

Christian

gibt es eine Möglichkeit, den Namen (bzw. Pfad) einer
Excel-Mappe via Formel einzubinden? Die Funktion

=TEIL(ZELLE(„Dateiname“);FINDEN("[";ZELLE(„Dateiname“))+1;FINDE
N("]";ZELLE(„Dateiname“))-FINDEN("[";ZELLE(„Dateiname“))-1)

gibt leider immer den Namen der aktiven Datei zurück, nicht
den der eigenen Mappe.

Hallo Rob,

probiers mal so:

Tabellenblatt: K:\[DiagDiskontinuierlich2.xls]!Tabelle1
 │ G │
──┼───────────────────────────────┤
2 │ DiagDiskontinuierlich2.xls │
──┼───────────────────────────────┤
3 │ K: │
──┼───────────────────────────────┤
4 │ K:\DiagDiskontinuierlich2.xls │
──┴───────────────────────────────┘
Benutzte Formeln:
G2: =Mappe
G3: =Pfad
G4: =PfadMappe

Festgelegte Namen:
Mappe : =ARBEITSMAPPE.ZUORDNEN(16)
Pfad : =DATEI.ZUORDNEN(2)
PfadMappe : =DATEI.ZUORDNEN(2)&"\"&ARBEITSMAPPE.ZUORDNEN(16)

G2:G4
haben das Zahlenformat: Standard

Tabellendarstellung erreicht mit dem Code in FAQ:2363

Gruß
Reinhard

Grüezi Rob

Aber klar geht das - was in deiner Formel fehlt ist der Bezug zum Tabellenblatt dessen Infos wiedergegeben werden sollen - also immer einen Zellenbezug mit einbauen, dann klappt das.

Hier eine Auswahl von verschiedenen Formeln für unterschiedliche Teile des Namens:

Dateipfad und Dateiname:

=ZELLE("Dateiname";A1)

Nur der Dateipfad:

=LINKS(ZELLE("Dateiname";A1);FINDEN("[";ZELLE("Dateiname";A1);1)-1)

Nur der Dateiname:

=TEIL(ZELLE("Dateiname";A1);FINDEN("[";ZELLE("Dateiname";A1);1)+1;FINDEN("]";ZELLE("Dateiname";A1);1)-FINDEN("[";ZELLE("Dateiname";A1);1)-1)

Tabellelblattname:

=RECHTS(ZELLE("Dateiname";A1);LÄNGE(ZELLE("Dateiname";A1))-FINDEN("]";ZELLE("dateiname";A1);1))

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -

Lösung: Mit Bezug auf eigene Mappe
Salu Thomas,

klar, mein Gott. Völlig einleuchtend.

Vielen Dank und die besten Grüße :smile:
-Rob.

Lösung: Mit festgelegten Namen
Salu Reinhard,

probiers mal so:

Festgelegte Namen:
Mappe : =ARBEITSMAPPE.ZUORDNEN(16)
Pfad : =DATEI.ZUORDNEN(2)
PfadMappe : =DATEI.ZUORDNEN(2)&""&ARBEITSMAPPE.ZUORDNEN(16)

Das ist ja eine interessante Technik! *staun* Ich wußte gar nicht, daß die Namensdefinition derart erweiterte Funktionen beinhaltet. Damit muß ich mich unbedingt mal näher befassen.

Vielen Dank und adventliche Grüße :smile:
-Rob.

1 Like

Salu Christian,

tja, dieses Forum ist schon von Excel-fundiertem Wissen getragen und es wurden gleich zwei Lösungen genannt. :wink:

Viele Grüße
-Rob.

Salu ubsp,

Wenn Du mit Mappe das aktuelle Tabellenblatt meinst :

=TEIL(ZELLE(„Dateiname“);FINDEN("]";ZELLE(„Dateiname“))+1;LÄNGE
(ZELLE(„Dateiname“))-FINDEN("]";ZELLE(„Dateiname“)))

Nein, diese Formel stand ja schon in meiner Frage (!). Nicht gesehen? Ich benötigte aber auch eben nicht die Bezeichung des aktuellen Blatts, sondern die der eigenen Mappe.

Viele Grüße
-Rob.

Festgelegte Namen:
Mappe : =ARBEITSMAPPE.ZUORDNEN(16)
Pfad : =DATEI.ZUORDNEN(2)
PfadMappe : =DATEI.ZUORDNEN(2)&""&ARBEITSMAPPE.ZUORDNEN(16)

Das ist ja eine interessante Technik! *staun* Ich wußte gar
nicht, daß die Namensdefinition derart erweiterte Funktionen
beinhaltet. Damit muß ich mich unbedingt mal näher befassen.

Salu Rob,

ja, diese Excel4Makros können bestimmte Dinge die normale Excel-Funktionen nicht können.Z,B, Zellhöhe einer Zelle ermitteln, deren Farbe usw.
Und ihre Funktionalität ist auch bei allen neueren Excel-Versionen vorhanden. Da ich das nicht wußte habe ich hier, zwei Anfragen drüber deshalb nachgefragt bei Leuten die die neuen Versionen haben.

Übrigens, diese Funktionen sind Makrobefehle von/aus Excel4. Damals war die Makrosprache Deutsch und die Befehle standen in Zellen von Makroblättern.

Ist eine Zelle ausgeblendet so ist die Zellhöhe = 0 diese 0 wird ermittelt…
Diese 0 kannst du in Formeln abfragen, im Pseudocod so:
=WENN(Höhe=0;Dann;Sonst)

Oder du willst alle Zellen in A zählen die MANUELL gefärbt wurden und die Farbnummer 3 haben: Dazu brauchst du einen vergebenen Namen für eine Excel4-Funktion:

Name Formel
Farbe =Zelle.Zuordnen(63;$A1)

Dann eine Hilfsspalte, z.B. T mit diesen Formeln:
T1: =Farbe
T3: =Farbe
T3: =Farbe

Die 3er in T zählste dann normal mit ZÄHLENWENN()
Wichtig ist, an sich wie immer, genauestens auf relative Zelladressen zu achten.
In dem Beispiel ist bei $A1 nur die 1 relativ, also darauf achten daß du bei der Eingabe der Namensdefintion in Zeile 1 auch stehst.

Gruß
Reinhard
=ZÄHLENWENN(

Grüezi Rob

Festgelegte Namen:
Mappe : =ARBEITSMAPPE.ZUORDNEN(16)
Pfad : =DATEI.ZUORDNEN(2)
PfadMappe : =DATEI.ZUORDNEN(2)&""&ARBEITSMAPPE.ZUORDNEN(16)

Das ist ja eine interessante Technik! *staun* Ich wußte gar
nicht, daß die Namensdefinition derart erweiterte Funktionen
beinhaltet. Damit muß ich mich unbedingt mal näher befassen.

Wie Reinhard schon schrieb, sind das ‚alte‘ XL4-Makros aus der Zeit bevor es VBA in Excel gab. All das kann heute in Form von Namens-Definitionen noch verwendet werden.

Die Dokumentation zu diesen Makros kannst Du hier vo nmeinem WebSpace herunterladen:

http://users.quick-line.ch/ramel/Files/XlMacr8ge.ZIP

Mit freundlichen Grüssen

Thomas Ramel

  • MVP für MS-Excel -
1 Like

Salu Thomas,

Festgelegte Namen:
Mappe : =ARBEITSMAPPE.ZUORDNEN(16)
Pfad : =DATEI.ZUORDNEN(2)
PfadMappe : =DATEI.ZUORDNEN(2)&""&ARBEITSMAPPE.ZUORDNEN(16)

Das ist ja eine interessante Technik! *staun* Ich wußte gar
nicht, daß die Namensdefinition derart erweiterte Funktionen
beinhaltet. Damit muß ich mich unbedingt mal näher befassen.

Wie Reinhard schon schrieb, sind das ‚alte‘ XL4-Makros aus der
Zeit bevor es VBA in Excel gab. All das kann heute in Form von
Namens-Definitionen noch verwendet werden.

Das alles ist mir völlig neu und hochinteressant. Reinhard hatte mir im jüngeren Thread auch einen derartigen Hinweis gegeben. Dieses XL4Macro-Thema werde ich mir mal genauer ansehen. Vielen Dank auch für Deinen Link!

Auch dafür nochmal ein Sternchen, die besten Grüße und Wünsche für ein frohes Fest. :o)
-Rob.

Salu Reinhard,

ja, diese Excel4Makros können bestimmte Dinge die normale
Excel-Funktionen nicht können.Z,B, Zellhöhe einer Zelle
ermitteln, deren Farbe usw.
Und ihre Funktionalität ist auch bei allen neueren
Excel-Versionen vorhanden. Da ich das nicht wußte habe ich
hier, zwei Anfragen drüber deshalb nachgefragt bei Leuten die
die neuen Versionen haben.

Übrigens, diese Funktionen sind Makrobefehle von/aus Excel4.
Damals war die Makrosprache Deutsch und die Befehle standen in
Zellen von Makroblättern.

Ist eine Zelle ausgeblendet so ist die Zellhöhe = 0 diese 0
wird ermittelt…
Diese 0 kannst du in Formeln abfragen, im Pseudocod so:
=WENN(Höhe=0;Dann;Sonst)

Oder du willst alle Zellen in A zählen die MANUELL gefärbt
wurden und die Farbnummer 3 haben: Dazu brauchst du einen
vergebenen Namen für eine Excel4-Funktion:

Name Formel
Farbe =Zelle.Zuordnen(63;$A1)

Dann eine Hilfsspalte, z.B. T mit diesen Formeln:
T1: =Farbe
T3: =Farbe
T3: =Farbe

Die 3er in T zählste dann normal mit ZÄHLENWENN()
Wichtig ist, an sich wie immer, genauestens auf relative
Zelladressen zu achten.
In dem Beispiel ist bei $A1 nur die 1 relativ, also darauf
achten daß du bei der Eingabe der Namensdefintion in Zeile 1
auch stehst.

Das alles ist ja kurios. Gibt es da keine andere Möglichkeit, die Zellfüllfarbe zu ermitteln? Ich lese immer wieder, daß es sich dabei um obsolete Technik handelt - stimmt das? Einstweilen werde ich mal damit herumexperimentieren.

Sei bestlichst gegrüßt
-Rob.