OK - jeg kan godt se, at det ikke lige var det, du efterlyste - det gik åbenbart
lidt for stærkt med at svare. Filelistbox kan ikke bruges til også at vise
indholdet af subfolders.
Jeg ved ikke om du kan bruge det, men jeg har prøvet at lave et lille eksempel
med et listview, hvor filen listes i første kolonne, og placeringen i den anden.
Lav et projekt med reference til Microsoft Scripting Runtime, en form med et
listview (View-property = lvwReport, HideColumnHeaders=False), en tekstbox til
startfolderen, en checkbox til at angive, om subfolders skal med, og en
commandbutton.
Undlad venligst at kommentere den manglende navngivningsstandard...
------kodestart------
Option Explicit
Dim fso As Scripting.FileSystemObject
Private Sub cmdListFiles_Click()
Dim fld As Folder
Set fld = fso.GetFolder(Text1.Text)
ListView1.ListItems.Clear
ListFiles fld, CBool(chkInclSubfld.Value)
End Sub
Private Sub Form_Load()
Set fso = New Scripting.FileSystemObject
ListView1.ColumnHeaders.Add , , "Filnavn"
ListView1.ColumnHeaders.Add , , "Mappenavn"
End Sub
Private Sub ListFiles(ByVal fld As Folder, ByVal bIncludeSubfolders As Boolean)
Dim item As ListItem
Dim fldSub As Folder
Dim f As File
For Each f In fld.Files
Set item = ListView1.ListItems.Add(, , f.Name)
item.SubItems(1) = f.Path
Next
If bIncludeSubfolders Then
For Each fldSub In fld.SubFolders
ListFiles fldSub, bIncludeSubfolders
DoEvents
Next
End If
End Sub
-----kodeslut-----
Du kan jo så indlægge passende værdier i Key for de enkelte items, så du kan
bruge den direkte.
Mvh/Carsten
The MaXx skriver:
>
> Jeg vil prøve dette men kan ikke helt gennemskue at den skal virke som jeg
> vil ha det...
> Hvis jeg har denne filstruktur på min hardisk:
> C:\fld1\sub1\fil1.txt
> C:\fld1\sub2\fil2.txt
> C:\fld1\sub3\fil3.txt
> Vil den funktion så vise:
> fil1.txt
> fil2.txt
> fil3.txt
>
> og hvad vil der ske hvis to filer i forskellige biblioteker heder det samme
> (jeg vil helst have den til at vise filnavnet to gange (en for hver)).
> The MaXx