Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateiname ohne Pfad

Dateiname ohne Pfad
Mandy
Hallo
ich möchte eine Datei per Makro abspeichern:
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:=Dateiname, fileFilter:="Excel-Arbeitsmappe, *.xls")
Bei meinem Neuer_Dateiname wird aber immer der komplette Pfad angegeben, ich möchte aber nur den dateiname. Was mach eich den falsch ?
Danke
Mandy
Anzeige

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Dateiname ohne Pfad
03.11.2009 09:15:45
Armin
Hallo Mandy,
ich versteh nicht ganz warum Du das File ohne Pfad abspeichern willst.
Das könntest Du nur beim schließen brauchen und das machst Du
so: Workbooks(ActiveWorkbook.Name).Close savechanges:=True
Gruß Armin
von hinten durch die Brust ins Auge
03.11.2009 09:19:23
hinten
Hallo Armin,
Workbooks(ActiveWorkbook.Name).Close savechanges:=True
warum nicht gleich
ActiveWorkbook.Close True
?
Gruß
Rudi
Anzeige
AW: Dateiname ohne Pfad
03.11.2009 09:27:00
mandy
Hallo
eigentlich will ich vor dem Speichern nur prüfen, ob der Dateiname länger als 50 Zeichen lang ist, wenn ja , soll eine MSGBox kommen:
Dim Neuer_Dateiname
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:=Dateiname, fileFilter:="Excel-Arbeitsmappe, *.xls")
If Neuer_Dateiname = False Then Exit Sub
If Len(Neuer_Dateiname) > 54 Then
MsgBox "Der Dateiname darf nicht länger als 50 Zeichen sein!"
Else
Nur Prüfe ich in diesem Fall nicht nur mein Dateiname, sondern den ganzen Pfad.
Darum stimmt mein Code nicht .
wie Brüfe ich nur den reinen Dateiname ?
Danke Mandy
Anzeige
AW: Dateiname ohne Pfad
03.11.2009 09:16:05
Rudi
Hallo,
Was mach eich den falsch ?

Nichts. Das ist so.
Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:=Dateiname, fileFilter:="Excel-Arbeitsmappe, *.xls")
Neuer_Dateiname = Split(Neuer_Dateiname, "\")(UBound(Split(Neuer_Dateiname, "\")))
Gruß
Rudi
Anzeige
AW: Dateiname ohne Pfad
03.11.2009 09:38:25
MichaV
Neuer_Dateiname = Split(Neuer_Dateiname, "\")(UBound(Split(Neuer_Dateiname, "\")))
wow, welch Konstrukt :o)
Mein Vorschlag: Neuer_Dateiname=Mid(Neuer_Dateiname, InStrRev(Neuer_Dateiname, "\") + 1)
Gruß- Micha
AW: Dateiname ohne Pfad
03.11.2009 09:45:38
bst
Auch Hallo,
Neuer_Dateiname = Dir(Neuer_Dateiname)
cu, Bernd
AW: Dateiname ohne Pfad
03.11.2009 09:56:20
MichaV
..kürzer gehts wohl nicht?!..
PS: ja, Hallo.
Anzeige
Danke an alle, jetzt gehts :-)
03.11.2009 12:02:53
mandy
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Dateiname ohne Pfad in Excel


Schritt-für-Schritt-Anleitung

Um den Dateinamen ohne Pfad in Excel zu erhalten, kannst du eine VBA-Lösung verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne den VBA-Editor:

    • Drücke ALT + F11, um den VBA-Editor zu öffnen.
  2. Füge ein neues Modul hinzu:

    • Klicke im Menü auf Einfügen und wähle Modul.
  3. Kopiere den folgenden Code in das Modul:

    Sub DateinameOhnePfad()
       Dim Neuer_Dateiname As String
       Neuer_Dateiname = Application.GetSaveAsFilename(InitialFileName:="MeinDateiname", fileFilter:="Excel-Arbeitsmappe, *.xls")
    
       If Neuer_Dateiname <> "False" Then
           Neuer_Dateiname = Mid(Neuer_Dateiname, InStrRev(Neuer_Dateiname, "\") + 1)
           MsgBox "Der Dateiname ist: " & Neuer_Dateiname
       End If
    End Sub
  4. Führe das Makro aus:

    • Drücke F5, um das Makro auszuführen.
  5. Prüfe den Dateinamen:

    • Ein Fenster erscheint, in dem du den Dateinamen auswählen kannst. Nach der Auswahl wird dir der Dateiname ohne den Pfad angezeigt.

Häufige Fehler und Lösungen

  • Fehler: Das Makro gibt den gesamten Pfad statt nur den Dateinamen aus.

    • Lösung: Stelle sicher, dass du die Mid-Funktion zusammen mit InStrRev korrekt verwendest, um nur den Dateinamen zu extrahieren.
  • Fehler: Das Dialogfeld für "Speichern unter" wird nicht geöffnet.

    • Lösung: Überprüfe, ob der Code in einem Modul und nicht in einem Arbeitsblatt platziert ist.

Alternative Methoden

Wenn du kein VBA verwenden möchtest, kannst du den Dateinamen ohne Pfad auch mit einer Formel in Excel erhalten, indem du die folgende Formel verwendest:

=RECHTS(A1;LÄNGE(A1)-FINDEN("|";WECHSELN(A1;"\";"|";LÄNGE(A1)-LÄNGE(WECHSELN(A1;"\";"")))))

Diese Formel geht davon aus, dass der vollständige Pfad in Zelle A1 steht und gibt den Dateinamen ohne den Pfad zurück.


Praktische Beispiele

  1. VBA Beispiel:

    • Wenn du den Dateinamen in einer Zelle speichern möchtest, kannst du Folgendes hinzufügen:
      Range("A1").Value = Neuer_Dateiname
  2. Formel Beispiel:

    • Wenn dein Dateipfad in Zelle B1 steht, kannst du in Zelle C1 die oben genannte Formel verwenden, um nur den Dateinamen in C1 anzuzeigen.

Tipps für Profis

  • Verwende die Funktion Dir, um den Dateinamen aus einem Verzeichnis zu extrahieren. Beispiel:

    Neuer_Dateiname = Dir(Neuer_Dateiname)
  • Experimentiere mit der Funktion Split, um komplexere Dateinamen zu handhaben, insbesondere wenn du mit mehreren Dateipfaden arbeitest.


FAQ: Häufige Fragen

1. Wie kann ich den Dateinamen in einer Zelle anzeigen?
Du kannst den Dateinamen, den du ohne Pfad erhalten hast, einfach in eine Zelle schreiben, indem du Range("A1").Value = Neuer_Dateiname verwendest.

2. Kann ich den Dateinamen ohne Endung erhalten?
Ja, du kannst den Dateinamen ohne Endung erhalten, indem du den Code wie folgt anpasst:

Neuer_Dateiname = Left(Neuer_Dateiname, InStrRev(Neuer_Dateiname, ".") - 1)

3. Gibt es eine Möglichkeit, Dateinamen aus einem Ordner auszulesen ohne VBA?
Leider gibt es keine direkte Methode in Excel, um Dateinamen aus einem Ordner auszulesen, ohne VBA zu verwenden. Du könntest jedoch ein Skript in PowerShell oder eine Batch-Datei nutzen, um die Dateinamen in eine Textdatei zu exportieren und diese dann in Excel zu importieren.

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