hur gör jag för att lista alla filer och kataloger i en katalog, vill helst göra det med en for each loop på något sätt... Hej Får frågeställare efterfråga just att loopa med For Each.<br> Är inte dir snabbare med tanke på att det inte är något object. Förresten? Varför just for each loop? det behöver inte vara just for each, det var bara så jag hade tänkt mig lösningen, jag ville stega igenom varje fil och utföra samma operation på samtliga filer, andra loopar fungerar lika bra. Jag fick problem när jag skulle använda FSO, Felmeddelande: "userdefined type not defined" på <code>Dim FSO As Scripting.FileSystemObject</code> Du måste lägga till en referens till "Microsoft Scripting Libary". Under tools/references.lista filer
tack på förhand
/TobiasSv: lista filer
Du kan kolla mitt uppskick ScanDir Programarkivet:022
eller den moderna metoden File System Objects.
Andreas uppskick Programarkivet:FileFinder (Ver1.1)
Mvh
SvenSv: lista filer
Vilket man tyvär inte kan använda Dir() funktionen för det.<br>
<br>
Den används på följande sätt:
<code>
Dim strPath As String
Dim strFileName As String
strPath = "C:\Windows\"
strFileName = Dir$(strSearch & "*.*", vbReadOnly Or vbHidden Or VbSystem Or vbDirectory)
If strFileName = "." Then
Dir
strFileName = Dir$()
End If
Do While Len(strFileName)
If GetAttr(strPath & strFileName) And vbDirectory Then
Debug.Print "Directory: " & strFileName
Else
Debug.Print "File: " & strFileName
End If
strFileName = Dir$()
Loop
</code>
Jämfört mot FSO(File System Objects):
<code>
Dim strPath As String
Dim FSO As Scripting.FileSystemObject
Dim File As Scripting.File
Dim Folder As Scripting.Folder
Dim SubFolder As Scripting.Folder
strPath = "C:\Windows"
Set FSO = New Scripting.FileSystemObject
Set Folder = FSO.GetFolder(strPath)
For Each SubFolder In Folder.SubFolders
Debug.Print "Directory: " & SubFolder.Name
Next
For Each File In Folder.Files
Debug.Print "File: " & File.Name
Next
</code>
Den stora nackdelen med dir är att man inte kan göra den rekursiv.Sv: lista filer
Sv: lista filer
Tack för svaren, det var precis de lösningar jag var ute efter!Sv: lista filer
varför kan jag inte använda dessa objekt i vb?Sv: lista filer