Start Hilfe und Support Microsoft Office EXCEL 2010 VBA: Dateinamen aus einer vollständgen Pfadangabe extrahieren

EXCEL 2010 VBA: Dateinamen aus einer vollständgen Pfadangabe extrahieren

E-Mail PDF

Die Funktion Dateiname extrahiert aus einem vollständigen Pfad/Path den Deiteinamen/Filename

Aufgabenstellung

Für verschiedene Zwecke benötigt man den Dateinamen bzw. den Filename eines vollständig angegebenen Pfades. Die folgende Funktion kann in VBA verwendet werden, um diese Aufgabe zu erledigen. Diese Funktion, die hier vorgestellt wird, liefert den Dateinamen eines vollständig angegebenen Pfades, der den Dateinamen mit inkludiert. Beispeil: An die Funktion wird "D:\Das\ist\eine\Datei.dat" übergeben; zurückgeliefert wird "Datei.dat". Ist im angegebenen Pfad die Datei nicht mit enthalten, dann wird der letzte Pfadname bzw. Ordnername zurückgeliefert. Beispiel: An die Funktion wird "D:\Das\ist\eine" übergeben; zurückgegeben wird "eine".

Funktion Dateiname

Function Dateiname(ByVal vDateiname As String) As String

  Dim sDateiname As String
  Dim sEinZeichen As String
  Dim lZaehler As Long
  Dim lLaenge As Long

  lLaenge = Len(vDateiname)
  sDateiname = ""  ' Intitialisierung von sEndung

  For lZaehler = lLaenge To 1 Step -1  ' Einzelne Zeichen werden von hinten nach vorne ausgelesen
                                       ' über eine Schleife
    sEinZeichen = Mid(vDateiname, lZaehler, 1)  ' die Mid-Funktion liefert ein Zeichen an der Stelle
                                                ' lZaehler mit der Länge von 1 Character der String-
                                                ' Variablen vDateiname, die an die Funktion
                                                ' übergeben worden ist, gespreichert wird der Character
                                                ' in der Variablen sEinZeichen

    If sEinZeichen = "\" Then  ' Enthält sEinZeichen einen \, hat man die Dateinamen erwischt,
                               ' in diesem Fall muss nicht weiter gesucht werden, und die Schleife
                               ' wird beendet
      Exit For
    Else
      sDateiname = sEinZeichen + sDateiname  ' Hier wird die Endung zusammengesetzt, da von hinten nach vorn
                                             ' gearbeitet wird, wird der Character dann auch vor den String
                                             ' gehängt. Man spricht von konkatenieren, wenn zwei String
                                             ' zusammengefügt werden.
    End If
  Next lZaehler

  Dateiname = sDateiname
End Function

Download des Beispiels

Hier können Sie sich das Beispiel herunterladen.


Zuletzt aktualisiert am Montag, den 04. November 2013 um 18:37 Uhr  


Machen Sie mit

Sie haben ein schönes Bild gemacht von Happerschoß, das auch andere interessieren könnte. Dann sollte es auf dieser Internetseite von Happerschoß erscheinen. Bitte melden Sie sich direkt über die Kontaktseite oder natürlich auch unter Info@happerschoss.net.