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

Forumthread: Dateiname ohne Dateierweiterung auslesen

Dateiname ohne Dateierweiterung auslesen
06.09.2006 14:52:42
Gerhard
Hallo,
wie kann man unter VBA den Dateiname der aktuellen Datei auslesen ohne die Dateierweiterung?
Ich wäre dankbar, wenn mir jemand weiterhelfen könnte.
Gruß
Gerhard
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateiname ohne Dateierweiterung auslesen
06.09.2006 14:59:44
fcs
Hallo Gerhard,

With ActiveWorkbook
NameOhneXLS = Left(.Name, Len(.Name) - 4)
End With

Gruß
Franz
AW: Dateiname ohne Dateierweiterung auslesen
06.09.2006 15:37:41
Gerhard
Hallo,
irgendwie kann ich das nicht in meinen VBA-Code einbauen. Ich kenne mich eben nicht besonders gut in VBA aus.
Hier mal der Code:
BackupName = "\" & ActiveWorkbook.Name & "-Sicherungskopie vom " & Format(Now, "YYYY-MM-DD") & "_" & (Environ("USERNAME")) & ".xls"
Statt "ActiveWorkbook.Name" soll der Dateiname ohne die Erweiterung verwendet werden. Ist bestimmt ganz einfach, nur komme ich nicht drauf.
Gruß
Gerhard
Anzeige
AW: Dateiname ohne Dateierweiterung auslesen
06.09.2006 15:50:02
IngGi
Hallo Gerhard,
so sollte es gehen:
BackupName = "\" & Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) _
& "-Sicherungskopie vom " & Format(Now, "YYYY-MM-DD") & "_" & (Environ("USERNAME")) & ".xls"
Gruß Ingolf
AW: Dateiname ohne Dateierweiterung auslesen
06.09.2006 15:59:56
Gerhard
Hallo,
vielen Dank. Jetzt geht alles.
Auf die Lösung wäre ich nie gekommen. Sieht doch gar nicht so einfach aus.
Gruß
Gerhard
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Dateiname ohne Dateierweiterung auslesen in Excel


Schritt-für-Schritt-Anleitung

Um den Dateinamen ohne die Dateierweiterung in Excel VBA auszulesen, kannst du folgende Schritte befolgen:

  1. Öffne das Visual Basic for Applications (VBA) Editor in Excel mit der Tastenkombination ALT + F11.

  2. Füge ein neues Modul hinzu, indem du mit der rechten Maustaste auf "VBAProject (dein Dokument)" klickst und "Einfügen" > "Modul" auswählst.

  3. Kopiere den folgenden VBA-Code in das Modul:

    Sub DateinameOhneEndung()
       Dim NameOhneXLS As String
       With ActiveWorkbook
           NameOhneXLS = Left(.Name, Len(.Name) - 4) ' Entfernt die letzten 4 Zeichen (z.B. .xls)
       End With
       MsgBox "Der Dateiname ohne Endung ist: " & NameOhneXLS
    End Sub
  4. Schließe den VBA-Editor und führe das Makro aus, um den Dateinamen ohne die Dateierweiterung anzuzeigen.


Häufige Fehler und Lösungen

  • Fehler: "Laufzeitfehler 9: Index außerhalb des gültigen Bereichs."

    • Lösung: Stelle sicher, dass du das Makro in einer geöffneten Arbeitsmappe ausführst.
  • Fehler: "Objektvariable oder With-Blockvariable nicht festgelegt."

    • Lösung: Überprüfe, ob du das Makro in einer aktiven Arbeitsmappe ausführst.

Alternative Methoden

Wenn du den Dateinamen ohne die Dateierweiterung ohne VBA auslesen möchtest, kannst du dies auch mit einer Formel in Excel tun. Hier ist ein einfacher Ansatz:

  1. Gib in eine Zelle die Formel ein:

    =LINKS(A1;LÄNGE(A1)-4)

    Dabei ist A1 die Zelle, in der der vollständige Dateiname steht.

  2. Diese Formel entfernt die letzten vier Zeichen, was in der Regel die Dateierweiterung ist.


Praktische Beispiele

Hier sind einige praktische Anwendungen des oben genannten Codes:

  • Backup-Datei erstellen: Wenn du eine Sicherungskopie deiner Datei erstellen möchtest, kannst du den Dateinamen ohne Endung verwenden:

    BackupName = "\" & Left(ActiveWorkbook.Name, Len(ActiveWorkbook.Name) - 4) & "-Sicherungskopie vom " & Format(Now, "YYYY-MM-DD") & "_" & (Environ("USERNAME")) & ".xls"
  • Dateinamen aus Ordner auslesen: Um mehrere Dateinamen aus einem Ordner auszulesen, kannst du den folgenden Code verwenden:

    Sub AuslesenDateinamen()
       Dim Datei As String
       Dim Ordner As String
       Ordner = "C:\DeinOrdner\"
       Datei = Dir(Ordner & "*.xls")
    
       Do While Datei <> ""
           Debug.Print Left(Datei, Len(Datei) - 4) ' Gibt den Dateinamen ohne Endung im Direktfenster aus
           Datei = Dir
       Loop
    End Sub

Tipps für Profis

  • Nutze die Funktion InStrRev in VBA, um flexibler mit verschiedenen Dateiendungen umzugehen. So kannst du auch andere Dateiformate berücksichtigen.
  • Experimentiere mit der Fehlerbehandlung, um dein Makro robuster zu gestalten und unerwartete Probleme abzufangen.

FAQ: Häufige Fragen

1. Wie kann ich den Dateinamen ohne Endung in Excel 365 auslesen?
Die Methode ist die gleiche wie in anderen Excel-Versionen. Du kannst den VBA-Code oder die Excel-Formel verwenden.

2. Gibt es eine Möglichkeit, mehrere Dateinamen aus einem Ordner ohne VBA auszulesen?
Ja, das ist durch die Verwendung von Power Query möglich. Du kannst die Namen der Dateien importieren und die Endungen entfernen.

3. Kann ich den VBA-Code anpassen, um andere Dateiendungen zu entfernen?
Ja, du kannst die Zahl 4 in den VBA-Code anpassen, um die Anzahl der zu entfernenden Zeichen zu ändern, je nach Dateiendung.

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