PDA

Vollständige Version anzeigen : PC-Laufwerk einlesen


Hans-Günter Faßbender
03.02.2001, 16:20
<pre><font face="Arial" size="2">Hallo Leute,
ich möchte komplette Laufwerke von einem PC in eine Tabelle einlesen.
Wer hat so was schon mal gemacht und kann mir helfen. Die Tabelle sollte
wie folgt aussehen.</font><table border="1" width="78%"><tr><td width="26%">Pfad</td><td width="13%">Dateiname</td> <td width="20%">Grösse</td><td width="43%">Datum</td>
</tr><tr><td width="26%">C:\Windows\System</td><td width="13%">Sysedit.exe</td><td width="20%">19.495</td><td width="43%">05.05.1999</td></tr></table>
<font face="Arial" size="2">Fassi</font>

Nockenwelle
03.02.2001, 17:00
Hi,

ich hab' da was:

Public Function Dateilisten(Verzeichnis As String, Namen As String, Ziel As String) As String
' Die Funktion liest ein Verzeichnis aus und schreibt das Egebnis in eine Tabelle
Dim retcode As Integer
Dim dbs As Database
Dim rst As Recordset
Dim vtext As String
'Dim stAppName As String
Dim I As Variant
Dim dateisuche



Set dbs = CurrentDb
'Warnmeldungen abschalten
DoCmd.SetWarnings False
DoCmd.RunSQL ("delete * from " & Ziel)
Set rst = dbs.OpenRecordset(Ziel, dbOpenDynaset)

Set dateisuche = Application.FileSearch
With dateisuche
'Z.B. "C:\"
.LookIn = Verzeichnis
.FileName = Namen
.SearchSubFolders = False
.Execute
For I = 1 To .foundfiles.Count
rst.AddNew
rst!Dateiname = .foundfiles.Item(I)
rst.Update

'MsgBox .FoundFiles(i)
'Debug.Print .foundfiles.Item(i)
Next I
End With
rst.Close
End Function

Usage: Dateilisten("c:\","*","Zieltabelle")
rst!dateiname ist ein Tabellenfeld, wohin du liest.
.SearchSubFolders musst du auf true setzen.

Cu

Nockenwelle
03.02.2001, 17:16
Nochmal ich,
mit Datum meinst du wahrscheinlich 'zuletzt geändert':
.LastModified
Ich glaub' zum Thema Aufsplitten zwischen Pfad und Dateinamen gibt es auch hier im Forum Beiträge.

Cu