Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

statt festen Pfad lieber auswählen

Forumthread: statt festen Pfad lieber auswählen

statt festen Pfad lieber auswählen
29.03.2021 10:49:38
Vanessa
Hallo,
ich möchte bei dem folgenden Code keinen festen Ordner hinterlegen wie hier D:\Pfad sondern
den Pfad auswählen wollen. Habt Ihr eine Idee, wie man das machen kann?
LG Vanessa
Option Explicit
Option Compare Text
Const sRootPath As String = "D:\Pfad" 'den möchte ich gern auswählen wollen
Private lRowCounter As Long
Private oSheet As Object
Public Sub MWDateienMitUnterordnernAuslesen()
Set oSheet = Sheets.Add
oSheet.Activate
oSheet.Cells(1, 1).Select
Call CreateHeadLinesAndFormat
lRowCounter = 2
Call MWReadSubFolder(sRootPath)
Set oSheet = Nothing
End Sub

Private Sub CreateHeadLinesAndFormat()
Dim i As Long
oSheet.Cells(1, 1) = "Pfad"
oSheet.Cells(1, 2) = "Dateiname"
oSheet.Columns(1).ColumnWidth = 40
oSheet.Columns(2).ColumnWidth = 40
For i = 1 To 2
With oSheet
.Cells(1, i).Interior.ColorIndex = 11
.Cells(1, i).Font.Color = vbWhite
.Cells(1, i).Font.Bold = True
End With
Next i
End Sub

Private Sub MWReadSubFolder(ByVal sPath As String)
Dim oFSO As Object
Dim oFolder As Object
Dim oSubFolder As Object
Dim oFile As Object
Set oFSO = CreateObject("Scripting.FileSystemObject")
Set oFolder = oFSO.getfolder(sPath)
With oSheet
For Each oSubFolder In oFolder.subfolders
'Alle Dateien auflisten
For Each oFile In oSubFolder.Files
.Cells(lRowCounter, 1) = oSubFolder.Path
.Cells(lRowCounter, 2) = oFile.Name
lRowCounter = lRowCounter + 1
Next oFile
'Alle Unterverzeichnisse verarbeiten (rekursiv)
Call MWReadSubFolder(oSubFolder.Path)
Next oSubFolder
End With
Set oFSO = Nothing
Set oFile = Nothing
Set oFolder = Nothing
Set oSubFolder = Nothing
End Sub


Anzeige

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

Betreff
Datum
Anwender
Anzeige
AW: statt festen Pfad lieber auswählen
29.03.2021 11:01:51
Rudi
Hallo,
Option Explicit
Option Compare Text
Dim sRootPath As String
Private lRowCounter As Long
Private oSheet As Object
Public Sub MWDateienMitUnterordnernAuslesen()
Set oSheet = Sheets.Add
oSheet.Activate               'überflüssig
oSheet.Cells(1, 1).Select     'überflüssig
Call CreateHeadLinesAndFormat
lRowCounter = 2
With Application.FileDialog(msoFileDialogFolderPicker)
.InitialFileName = "c:\test\"
If .Show = -1 Then
sRootPath = .SelectedItems(1)
End If
End With
If Len(sRootPath) Then
Call MWReadSubFolder(sRootPath)
End If
Set oSheet = Nothing
End Sub

Gruß
Rudi

Anzeige
AW: statt festen Pfad lieber auswählen
31.03.2021 09:29:25
Vanessa
super, besten Dank!
;

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