Har du set hvor smart det kan være?

Microsoft Office, Word skabeloner, Excel regnearkSmart Office Word skabelon system

SmartOffice - ReadFilesInDirectory

Gennemløb et bibliotek for alle filer eller alle filer af en specifik type, og indlæs dem i et array for videre behandling.



Eksempel 1

Option Explicit

Private mstrFileNames() As String
Private miX As String

Public Sub DebugPrintFilesNames()
    Dim iZ As Integer
    
    FindTheFiles "d:\VBA\_Test\", "xls"

    For iZ = 1 To miX
        Debug.Print mstrFileNames(iZ)
    Next iZ
End Sub


Public Sub FindTheFiles(ByVal strFilePath As String, ByVal strFileType As String)
    Dim strTmpFileName As String

    'Vælger bibliotek
    If Not Right(strFilePath, 1) = "\" Then strFilePath = strFilePath & "\"
    miX = 0
        
    'Indlæsning af filer til et array
    miX = 0
    ReDim Preserve mstrFileNames(miX)
    strTmpFileName = Dir(strFilePath)
    mstrFileNames(miX) = strTmpFileName
    
    Do
        strTmpFileName = Dir
        If strTmpFileName <> "" Then
            If LCase(Right(strTmpFileName, Len(strFileType))) = LCase(strFileType) Then
                miX = miX + 1
                ReDim Preserve mstrFileNames(miX)
                mstrFileNames(miX) = strTmpFileName
            End If
        Else
            Exit Do
        End If
    Loop

    'Sortering af filnavne alfabetisk (kun i Word)
    'WordBasic.SortArray mstrFileNames()
End Sub


Hvis du skal indlæse alle filer, så skal du efterlade strFileType blank. Altså kald makroen f.eks. således FindTheFiles "d:\VBA\_Test\", ""

   

Smart Office Freeware Smart Data Management
Compare 2 Columns
Excel Super- Subscript
Teachers Excel Tools
         
Smart Office - Word og Excel specialist