Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1820to1824
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

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


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

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige