MS-Office-Forum

Zurück   MS-Office-Forum > Microsoft Office > Microsoft Excel
Registrieren Forum Hilfe Alle Foren als gelesen markieren

Banner und Co.

Antworten
Ads
Themen-Optionen Ansicht
Alt 15.03.2019, 09:55   #1
samhan
Neuer Benutzer
Neuer Benutzer
Standard VBA - VBA Pfad auswählen und automatisch csv auslesen

hi!

Ich habe ein VBA Code geschrieben und komme leider nicht weiter, weshalb ich um die Hilfe dieser Community bitte. Was ich gerne realisieren möchte:

Ich habe mehrere CSV Dateien in einem Ordner.
Ich möchte den Ordner auswählen und die darin befindlichen CSV Dateien in separate Worksheets importieren (dafür habe ich ein Loop in meinem Code definiert, der die Dateinamen von einem Sheet sowie den dazugehörigen Worksheetnamen auswählt). Das hat funktioniert, bloß ohne dass ich vorher eingestellt habe, dass man eben ein Ordner auswählen kann; das war vorher von mir fest definiert.

Seit ich aber den "diaFolder" definiert habe, kriege ich die Fehlermeldung, dass die CSV dateien da nicht enthalten seien, obwohl sie definitiv da drin liegen. Ich komme leider nicht auf die Lösung.

PS: ich habe nun erkannt was der Fehler ist! Obwohl ich den Ordner auswähle, wählt er nicht den "Subordner" aus. Zum beispiel ich will den order C:/Hallo/ich/Jetzt
hab es gelöst! Maßgeblich hat mir das hier geholfen, von einer anderen Website:

Code:

ub SelectFolder2()
Dim sFolder As String
    ' Open the select folder prompt
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "Select a Folder"
        If .Show = -1 Then ' if OK is pressed
            sFolder = .SelectedItems(1)
        End If
    End With
    
    If sFolder <> "" Then ' if a file was chosen
        ' *********************
        ' put your code in here
        ' *********************
    End If
End Sub

Geändert von samhan (15.03.2019 um 10:30 Uhr).
samhan ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Alt 15.03.2019, 17:26   #2
Silentwolf
MOF User
MOF User
Standard

Hi,

does this code work for you?

Code:

    Dim diag As Office.FileDialog
    Dim item As Variant
    
    Set diag = Application.FileDialog(msoFileDialogFilePicker)
    diag.AllowMultiSelect = False
    diag.Title = "Select Excel File"
    diag.Filters.Clear
    diag.Filters.Add "Excel Spreadsheets", "*.xls,*.xlsx"
    
    If diag.Show Then
        For Each item In diag.SelectedItems
            Me.txtFileName = item
        Next
    End If

__________________

Gruß
Albert
Silentwolf ist offline  
verlinken auf Del.icio.us Diese Seite zu Mister Wong hinzufügen
Antworten Auf Beitrag antworten
Ads
Antworten


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Besucher: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge anzufügen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

vB Code ist An.
Smileys sind An.
[IMG] Code ist An.
HTML-Code ist An.
Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:37 Uhr.



Powered by: vBulletin Version 3.6.2 (Deutsch)
Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.

Copyright ©2000-2018 MS-Office-Forum. Alle Rechte vorbehalten.
Copyright ©Design: Manuela Kulpa ©Rechte: Günter Kramer
Eine Verwendung der Inhalte in anderen Publikationen, auch auszugsweise,
ist ohne ausdrückliche Zustimmung der Autoren nicht gestattet.