Pfadauswahl

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: Pfadauswahl
von: Schwoga
Geschrieben am: 27.04.2015 11:39:58

Hallo,
ich habe folgende Funktion um mir Daten aus einer geschlossenen Datei zu holen. Da ich aber nicht immer den gleichen Dateinamen am gleichen Pfad habe, es aber immer grundsätzlich die gleiche Vorlage ist, möchte ich da eine Auswahl einbauen, die es mir ermöglicht, die richtige Datei auszuwählen. Geht das irgendwie? Gefunden habe ich bisher nirgends das richtige bzw. hat´s nicht funktioniert.

Public Sub HoleDaten()
Dim Pfad            As String
Dim Dateiname       As String
Dim Blatt           As String
Dim Zellen As String
    Pfad = "D:\Eigene Dateien\"
    Dateiname = "Quelle.xlsm"
    Blatt = "Quelle1"
    Zellen = "A4:L89"
    If GetDataClosedWB(Pfad, _
            Dateiname, _
            Blatt, _
            Zellen, _
            Worksheets("Quelle1").Range("A4")) Then
        MsgBox "Daten importiert"
    End If
End Sub
Es müsste irgendwie das PFAD und DATEINAME umgangen werden.
Es wäre schon, wenn da jemand eine Antwort hätte.
Danke
Schwoga

Bild

Betrifft: AW: Pfadauswahl
von: Daniel
Geschrieben am: 27.04.2015 12:57:01
Hi
mit Application.GetOpenfilename öffnet sich der Dateiauswahldialog und Pfad+name der gewählten Datei wird in die Variable geschrieben.

Pfad = Application.GetOpenFileName
if not Pfad like ".xls?" then Exit Sub 'Abbruch oder keine Exceldatei gewählt
DateiName = Mid$(Pfad, InstrRev(Pfad, "\") + 1)
Pfad = Left(Pfad, InstrRev(Pfad, "\"))
dann weiter wie gehabt
Gruß Daniel

Bild

Betrifft: AW: Pfadauswahl
von: ChrisL
Geschrieben am: 27.04.2015 12:58:12
Hi

Public Sub HoleDaten()
Dim Pfad            As String
Dim Dateiname       As String
Dim Blatt           As String
Dim Zellen As String
Dim FileToOpen As Variant
FileToOpen = Application.GetOpenFilename("Excel-Datei (*.xlsm), *.xlsm")
If FileToOpen = False Then Exit Sub
Dateiname = Right(FileToOpen, Len(FileToOpen) - InStrRev(FileToOpen, "\"))
Pfad = Left(FileToOpen, Len(FileToOpen) - Len(Dateiname))
    Blatt = "Quelle1"
    Zellen = "A4:L89"
    If GetDataClosedWB(Pfad, _
            Dateiname, _
            Blatt, _
            Zellen, _
            Worksheets("Quelle1").Range("A4")) Then
        MsgBox "Daten importiert"
    End If
End Sub

cu
Chris

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Vergleich und Index Formel mit externem Bezug"