Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
672to676
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
672to676
672to676
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ordner auslesen

Ordner auslesen
26.09.2005 21:11:22
Fuger
Hallo!
Der Code stammt von "Ramses" denn ich leider nicht mehr erreichen konnte!
Leider komme ich schon wieder nicht weter mit VBA!
Ich bräuchte jemanden der mir den folgenden Code so umschreibt, dass ich nicht nach Files sondern nach Ordnern suche und in der ListBox1 aufliste.
Sollte Ramses den Beitrag lesen dann möchte ich mich herzlich bedanken für die Hilfe! Die Botschaft ist am 19.09.2005 wahrscheindlich nicht angekommen. Habe aber noch einige Probleme.

Private Sub CommandButton2_Click()
Me.ListBox1.List = FileArray(Me.TextBox1.Text)
End Sub


Private Sub UserForm_Initialize()
'Pfad anpassen !!!
'lstFiles.List = FileArray("c:\Gelieferte Positionen\", "*.xls")
Me.ListBox1.List = FileArray("C:\Gelieferte Positionen\", "*.*")
End Sub

Function FileArray(strPath As String, strPattern As String)
Dim arrDateien()
Dim intCounter As Integer
Dim strDatei As String
If Right(strPath, 1) "\" Then strPath = strPath & "\"
strDatei = Dir(strPath & strPattern)
Do While strDatei ""
intCounter = intCounter + 1
ReDim Preserve arrDateien(1 To intCounter)
arrDateien(intCounter) = strDatei
strDatei = Dir()
Loop
FileArray = arrDateien
End Function
Ausserdem hätte ich gerne gewusst wie ich verhindern kann dass eine Fehlermeldung kommt wenn der Ordner C:\Gelieferte Positionen momentan keine Dateiern enthält, sondern die Listbox1 einfach ohne Inhalt angezeigt wird.
Auch hätte ich gerne gewusst wie ich in VBA eine Datei in einen anderen Ordner verschiebe. Von c:\Gelieferte Positionen in c:\Geliefert September2005
Danke im Voraus
Gerhard

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

Betreff
Datum
Anwender
Anzeige
AW: Ordner auslesen
26.09.2005 21:32:54
Stephan
Hallo Gerhard,
ersetze Deine Funktion "FileArray" einfach durch folgende:

Function SubDirectories(strPath As String)
Dim arrDateien()
Dim intCounter As Integer
Dim strDatei   As String
If Right$(strPath, 1) <> "\" Then strPath = strPath & "\"
strDatei = Dir$(strPath, vbDirectory)
Do While LenB(strDatei) > 0
If strDatei <> "." And strDatei <> ".." Then
If (GetAttr(strPath & strDatei) And vbDirectory) = vbDirectory Then
'Debug.Print strPath & strDatei
intCounter = intCounter + 1
ReDim Preserve arrDateien(1 To intCounter)
arrDateien(intCounter) = strDatei
End If
End If
strDatei = Dir()
Loop
SubDirectories = arrDateien
End Function

Das Attribut vbDirectories sorgt dafür, dass Verzeichnisse mit aufgelistet werden. Der erste If-Block sorgt dafür, dass das aktuelle und das untergeordnete Verzeichnis nicht angezeigt werden, mit dem zweiten Block stellen wir sicher, dass nur Dateien angezeigt werden.
Hope this helps.
Stephan
Anzeige
AW: Ordner auslesen Dank an Stephan
27.09.2005 11:00:37
Fuger
Hallo!
Funktioniert super!! Herzlichen Dank.
Gruss
Gerhard

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige