Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Dateiname importierter Datei in Zelle schreiben

Dateiname importierter Datei in Zelle schreiben
08.06.2017 07:11:38
Frank
Hallo liebe Excel Gemeinde,
ich habe folgendes Problem und ich hoffe Ihr könnt mir dabei helfen es zu lösen. Ich bin noch ein Anfänger auf dem Gebiet der VBA und taste mich langsam an die Thematik heran.
Zu diesen Thema gibt es schon eine Diskussion in diesem Forum, jedoch in komplexerer Form und mir gelingt es nicht diese auf mein "einfaches" Problem anzuwenden.
Ich wähle eine CSV Datei aus und diese wird im Arbeitsblatt "Tabelle2" importiert.
Der funktionierende Code dazu:
Option Explicit

Sub HS_Einlesen()
Dim varFileToOpen As Variant
varFileToOpen = Application.GetOpenFilename("Alle Dateien, *.*,csv-Dateien,*.*")
If varFileToOpen = False Then Exit Sub
With Workbooks.Open(varFileToOpen, Local:=True)
.Worksheets(1).UsedRange.Copy Destination:=ThisWorkbook.Worksheets("Tabelle2").Cells(1)
.Close SaveChanges:=False
End With
End Sub

Nun soll noch der vollständige Dateiname der importierten Datei im Arbeitsblatt "Tabelle4" im Bereich B6 geschrieben werden.
Ich bin gespannt auf eure Vorschläge.
Mit freundlichen Grüßen
Frank
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Dateiname importierter Datei in Zelle schreiben
08.06.2017 07:22:22
Nepumuk
Hallo,
so:
Sub HS_Einlesen()
    
    Dim varFileToOpen As Variant
    
    varFileToOpen = Application.GetOpenFilename("Alle Dateien, *.*,csv-Dateien,*.*")
    If varFileToOpen = False Then Exit Sub
    
    With Workbooks.Open(varFileToOpen, Local:=True)
        .Worksheets(1).UsedRange.Copy Destination:=ThisWorkbook.Worksheets("Tabelle2").Cells(1)
        ThisWorkbook.Worksheets("Tabelle4").Cells(6, 2).Value = .FullName
        .Close SaveChanges:=False
    End With
    
End Sub

Gruß
Nepumuk
Anzeige
AW: Dateiname importierter Datei in Zelle schreiben
08.06.2017 14:16:48
Frank
Hallo Nepumuk,
vielen vielen Dank, klappt wunderbar.
Meine Formulierung war evtl. etwas schwammig. Der Code von dir schrieb alle Verzeichnisse bis zum Dateinamen mit in die Zelle.
Wenn anstatt .FullName einfach nur .Name geschrieben wir klappt es perfekt.
Danke nochmals....
Anzeige
;

Forumthreads zu verwandten Themen

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 der importierten Datei in Excel-Zelle schreiben


Schritt-für-Schritt-Anleitung

Um den Dateinamen einer importierten Datei in eine Zelle zu schreiben, kannst Du VBA verwenden. Hier ist eine einfache Schritt-für-Schritt-Anleitung:

  1. Öffne Excel und drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke auf Einfügen > Modul.

  3. Kopiere den folgenden Code in das Modul:

    Sub HS_Einlesen()
        Dim varFileToOpen As Variant
        varFileToOpen = Application.GetOpenFilename("Alle Dateien, *.*,csv-Dateien,*.*")
        If varFileToOpen = False Then Exit Sub
        With Workbooks.Open(varFileToOpen, Local:=True)
            .Worksheets(1).UsedRange.Copy Destination:=ThisWorkbook.Worksheets("Tabelle2").Cells(1)
            ThisWorkbook.Worksheets("Tabelle4").Cells(6, 2).Value = .Name
            .Close SaveChanges:=False
        End With
    End Sub
  4. Speichere Deine Arbeit und schließe den VBA-Editor.

  5. Führe das Makro aus: Gehe zurück zu Excel, drücke ALT + F8, wähle HS_Einlesen und klicke auf Ausführen.

Nun wird der Dateiname der importierten Datei in die Zelle B6 des Arbeitsblatts „Tabelle4“ geschrieben.


Häufige Fehler und Lösungen

  • Fehler: Der Import klappt nicht.

    • Lösung: Stelle sicher, dass Du die richtige Dateityp-Auswahl im Application.GetOpenFilename verwendest.
  • Fehler: Der Dateiname wird nicht korrekt angezeigt.

    • Lösung: Wenn Du .FullName verwendest, zeigt es den kompletten Pfad an. Ändere dies zu .Name für nur den Dateinamen.

Alternative Methoden

Wenn Du den Dateinamen nicht über VBA auslesen möchtest, kannst Du auch die Funktion =CELL("filename") in eine Zelle eingeben. Diese gibt den vollständigen Pfad der Datei zurück, die die Formel enthält. Du kannst den Text dann manuell anpassen, um nur den Dateinamen zu erhalten.


Praktische Beispiele

  1. Import einer CSV-Datei: Wenn Du eine CSV-Datei importierst, wird der Dateiname automatisch in die Zelle B6 geschrieben.
  2. Kombination mit anderen Funktionen: Du kannst die =TEXT-Funktion nutzen, um den Dateinamen in ein bestimmtes Format zu bringen.

Tipps für Profis

  • Nutze die Option Explicit-Anweisung am Anfang Deines VBA-Codes, um sicherzustellen, dass alle Variablen deklariert werden. Dies hilft, Fehler zu vermeiden.
  • Experimentiere mit verschiedenen Dateiformaten, um zu sehen, wie Excel damit umgeht.

FAQ: Häufige Fragen

1. Wie kann ich den Dateinamen in einer anderen Zelle speichern? Du kannst die Zeilen im VBA-Code anpassen, um den Dateinamen in eine andere Zelle zu schreiben, indem Du den Zellbezug in ThisWorkbook.Worksheets("Tabelle4").Cells(6, 2).Value änderst.

2. Funktioniert dies in allen Excel-Versionen? Ja, die VBA-Funktionalität ist in den meisten modernen Excel-Versionen verfügbar, jedoch solltest Du sicherstellen, dass Du die Makros aktiviert hast.

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