Collapse column

Autor Thema: Aufruf "Datei-öffnen-Menü"aus VBA um csv.Datendatei einzulesen  (Gelesen 549 mal)

Offline Bernd

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2013
Aufruf "Datei-öffnen-Menü"aus VBA um csv.Datendatei einzulesen
« am: August 28, 2018, 14:47:24 Nachmittag »
Hallo,
folgende Aufgabe habe ich, wofür ich bis jetzt keine Lösung gefunden habe:
ich möchte per Button und VBA über "Daten einfügen aus Text" eine csv-Datendatei einlesen. Die ganzen folgenden Einstellungen sind ohne Frage in VBA hinzubekommen
ABER :  die Datei kann unterschiedliche Namen haben und in verschiedenen Verzeichnissen abgelegt sein - also müsste ich das Excel-Menü "Datei öffnen" über VBA öffnen lassen, das Bild mit dem Datei-Explorer-Ausschnitt, um mir gezielt eine der vielen Datendateien auszusuchen.
Hat jemand eine Lösung mit Syntax dafür?
Gruß
Bernd

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.

Offline gmg-cc

  • Hero Member
  • *****
  • Beiträge: 1.321
    • Profil anzeigen
    • Meine Webseite
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Gut
  • Version [Office] : Office 2016
Antw: Aufruf "Datei-öffnen-Menü"aus VBA um csv.Datendatei einzulesen
« Antwort #1 am: August 28, 2018, 18:32:37 Nachmittag »
Moin,
sind Suchmaschinen deine Feinde? Ich habe eben >67.000 Ergebnisse bekommen, als ich eingegeben hab: Datei öffnen Dialog VBA und da wird bestimmt auch etwas für dich dabei sein; beispielsweise http://www.herber.de/forum/archiv/1184to1188/1184059_Dateiauswahlfilter_mit_FileDialog.html
Gruß
Günther

Offline Bernd

  • Newbie
  • *
  • Beiträge: 3
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2013
Antw: Aufruf "Datei-öffnen-Menü"aus VBA um csv.Datendatei einzulesen
« Antwort #2 am: September 04, 2018, 14:03:36 Nachmittag »
Hallo,

soweit habe ich es schon mal hinbekommen. Der Pfad/die Datei wird übergegeben (wenn auch umständlich) - aber beim
Einlesen der csv nicht mehr erkannt ( VBA meckert : "...kann Datei nicht finden ..."). Also muss doch bei der
-QueryTables.Add- etwas schief laufen - der Pfad wird nicht erkannt. Muss der doch unter .name der Dateiname expliziert
aufgeführt werden? Die Datei sollte doch mit dem Pfad mit der -strFileName- doch übergeben werden ... oder ist das ein
Problem der Variablendeklaration oder Zeichen falsch gesetzt ... ?
------------------
Public Function CSV_Datei_einlesen()
Dim strFileName As String
    With Application.FileDialog(msoFileDialogFilePicker)
    .AllowMultiSelect = False
    .Filters.Add "CSV-Dateien", "*.csv"
       If .Show = -1 Then
          strFileName = .SelectedItems(1)
          Cells(1, 1) = strFileName
       End If
    End With
End Function
Sub Einlesen()
Dim strFileName As String
    CSV_Datei_einlesen
    strFileName = Cells(1, 1)
    Cells(2, 2).Select
    With ActiveSheet.QueryTables.Add(Connection:="Text;strFileName", Destination:=Range("$B$2"))
        .Name = "strFileName"
        ' .... all die Einzeleinstellung sind hier ausgeblendet
        .Refresh BackgroundQuery:=False
    End With
End Sub
------------------
Gruß
und Danke im Voraus
Bernd

Wenn du dich noch intensiver mit Excel beschäftigen möchtest, dann empfiehlt sich ein Online-Kurs,
in dem du sehr viel über Excel erfährst und das gelernte umgehend in der Praxis anwenden kannst.