Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateinamen auslesen ohne .xls Endung

Dateinamen auslesen ohne .xls Endung
05.03.2006 19:44:55
Nossi
Ich habe gleich noch ein Problem. Um die Antworten übersichtlicher zu gestalten eröffne ich diesen zweiten Thread.
Ich habe möchte eine Datei und dort ein bestimmtes Arbeitsblatt öffnen. Es handelt sich um mehrere verschiedene Dateien. Jetzt möchte ich ein bestimmtes Arbeitsblatt öffnen das genauso heißt wie die Datei (nur eben ohne .xls). Wie bekomme ich das hin ohne das ich alle 200 Dateien öffnen muss und dort dem Arbeitsblattnamen noch ein .xls anhängen muss?
Danke im vorraus und Gruß
Nossi
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateinamen auslesen ohne .xls Endung
05.03.2006 19:50:51
Ramses
Hallo
Dim tarSheet as String
tarSheet = "Tabelle1"
Workbooks.Opne "C:\Pfad\" & tarSheet & ".xls"
Worksheets(tarSheet).Select
Das ist das was ich verstanden habe,... bei deinem Geschreibsel bin ich mir allerdings nicht sicher ob das auch richtig ist :-)
Gruss Rainer
Anzeige
AW: Dateinamen auslesen ohne .xls Endung
05.03.2006 19:57:26
Nossi
Hrhr :P nagut.
Ich meinte das genau andersrum.
'Einlesen des Quelldateinamens
Dateiname = ActiveWorkbook.Name
'Aktivieren des richtigen Arbeitsblattes (=Dateiname)
Worksheets(Dateiname).Activate
Bis jetzt habe ich das so geschrieben. Nur muss jetzt der Worksheet Name genau gleich der Name der Datei sein (also "Tabelle123.xls") er ist aber nur "Tabelle123".
Wie bekomme ich jetzt den reinen Dateinamen.
Gruß
Nossi
Anzeige
AW: Dateinamen auslesen ohne .xls Endung
05.03.2006 20:04:46
Ramses
Hallo
Meinst du so ?
Worksheets(left(thisworkbook.name, len(thisworkbook.name)-4)).Activate
Gruss Rainer
AW: Dateinamen auslesen ohne .xls Endung
05.03.2006 20:13:34
Nossi
Ja, das sieht gut aus, er gibt mir aber dennoch noch einen Fehler aus.
"
Laufzeitfehler '9':
Index außerhalb des gültigen Bereichs
"
Gruß
Nossi
AW: Dateinamen auslesen ohne .xls Endung
05.03.2006 20:19:03
Reinhard
Hi Nossi,
dann gibts in Tabelle123.xls kein Blatt was exakt Tabelle123 heißt
Gruß
Reinhard
ps: Ich freue mich über eine Rückmeldung ob diese Antwort hilfreich war oder nicht..
Anzeige
AW: Dateinamen auslesen ohne .xls Endung
05.03.2006 20:24:37
Nossi
Hmm..
nein der Fehler lag woanders, wenn ich "ActiveWorkbook.Name" anstatt "ThisWorkbook.Name" schreibe funktioniert es. Bei "This..." nimmt er die Datei bei der ich beim ausführen des Makros bin, ich brauche aber nur die zur Zeit aktivierte.
Danke für eure Antworten :)
Gruß
Nossi
Anzeige
o.w.T.
05.03.2006 22:09:38
Geschlossen
...
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Dateinamen ohne .xls Endung auslesen in Excel


Schritt-für-Schritt-Anleitung

Um den Dateinamen ohne die Endung .xls in Excel auszulesen, kannst Du den folgenden VBA-Code verwenden:

Sub DateinameOhneEndung()
    Dim dateiname As String
    Dim arbeitsblattName As String

    ' Den aktiven Dateinamen ohne Endung auslesen
    dateiname = ActiveWorkbook.Name
    arbeitsblattName = Left(dateiname, Len(dateiname) - 4) ' Entfernt die letzten 4 Zeichen (".xls")

    ' Das Arbeitsblatt aktivieren, das den gleichen Namen wie die Datei hat
    Worksheets(arbeitsblattName).Activate
End Sub

Dieser Code entfernt die .xls-Endung und aktiviert das entsprechende Arbeitsblatt. Achte darauf, dass das Arbeitsblatt in Deiner Datei genau den gleichen Namen hat wie der Dateiname ohne die Endung.


Häufige Fehler und Lösungen

  1. Laufzeitfehler '9': Index außerhalb des gültigen Bereichs

    • Ursache: Das Arbeitsblatt mit dem Namen existiert nicht.
    • Lösung: Überprüfe, ob das Arbeitsblatt genau den gleichen Namen hat wie die Datei ohne die Endung.
  2. Verwendung von ThisWorkbook anstelle von ActiveWorkbook

    • Ursache: ThisWorkbook bezieht sich auf die Datei, in der das Makro ausgeführt wird.
    • Lösung: Verwende ActiveWorkbook, um den Namen der aktuell geöffneten Datei zu erhalten.

Alternative Methoden

Wenn Du keine VBA-Makros verwenden möchtest, kannst Du auch die Funktion =CELL("filename",A1) in einer Zelle verwenden, um den vollständigen Dateinamen zu erhalten. Um nur den Dateinamen ohne die Endung zu erhalten, kannst Du die folgenden Formeln verwenden:

=RECHTS(CELL("filename",A1),LÄNGE(CELL("filename",A1))-FINDEN("[",CELL("filename",A1))-1-LÄNGE(".xls"))

Diese Formel extrahiert den Dateinamen und entfernt die Endung.


Praktische Beispiele

Hier sind einige Beispiele, wie Du die oben genannten Methoden verwenden kannst:

  • VBA-Beispiel: Wenn Du eine Datei mit dem Namen "Tabelle123.xls" hast und das entsprechende Arbeitsblatt aktivieren möchtest, kannst Du den VBA-Code aus der Schritt-für-Schritt-Anleitung verwenden.

  • Excel-Formel: Wenn Du in Zelle A1 eine Formel zur Anzeige des Dateinamens ohne Endung verwenden möchtest, füge die oben genannte Formel in eine beliebige Zelle ein.


Tipps für Profis

  • Verwende Application.DisplayAlerts = False, um Warnmeldungen beim Öffnen von Dateien zu unterdrücken, wenn Du mehrere Dateien ohne Endung gleichzeitig öffnest.
  • Du kannst auch eine Schleife implementieren, um alle Dateinamen aus einem bestimmten Ordner zu lesen und die Arbeitsblätter entsprechend zu aktivieren.
  • Denke daran, dass Du die Endung .xls nur dann entfernen kannst, wenn Du sicher bist, dass alle Dateien im gleichen Format vorliegen.

FAQ: Häufige Fragen

1. Kann ich die Datei ohne Endung erstellen?
Ja, Du kannst die Datei ohne Endung erstellen, aber Excel benötigt die Endung, um die Datei korrekt zu öffnen.

2. Wie lese ich Dateinamen aus einem Ordner ohne VBA?
Du kannst die Funktion =INDIREKT() in Kombination mit einer Liste von Dateinamen verwenden, um die Dateinamen ohne Endung anzuzeigen. VBA ist jedoch oft der einfachste Weg.

3. Welches Excel-Version benötige ich für diese Methoden?
Die beschriebenen VBA-Methoden und Excel-Formeln funktionieren in den meisten neueren Excel-Versionen (Excel 2010 und höher).

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige