..|| Blog || Produkti/Storitve || MExcel || MDodatki || 300 nasvetov ||..

izpis datotek

Pomoč pri izdelavi makrov

izpis datotek

OdgovorNapisal/-a Stenly » Ne dec 10, 2006 6:13 pm

Pozdravljeni

Želel bi izpis datotek. Iz starejšega foruma sem našel ustrezno kodo. Koda dela, vendar bi želel, da mi izpiše le ime datoteke (lahko tudi s končnico) in ne celotno ime "Full Name".

Prilagam kodo, žal pa ne vem ukaza , da bi mi izpisal le ime. Prosim za malo pomoči.
Koda: Izberi vse
Sub Isci_datoteke()
'
    Dim i As Long
    Dim ZacetnaCelica As Range

    Set ZacetnaCelica = Worksheets("list1").Range("a1")

    With Application.FileSearch
        .NewSearch
        .LookIn = "c:\Documents and Settings"             ' bolj natančno definirajte, kje naj išče
        .SearchSubFolders = True   ' ali res želite da preišče vse podmape?
        .Filename = "*.doc"
        If .Execute() > 0 Then
            For i = 1 To .FoundFiles.Count
                ZacetnaCelica.Offset(i, 0).Value = .FoundFiles(i)
            Next i
        Else
            MsgBox "Nisem našel ustreznih datotek."
        End If
    End With
End Sub


Lp
Stenly
 
Prispevkov: 223
Pridružen: Sr jul 27, 2005 11:29 pm



Matjazev.NET
 

OdgovorNapisal/-a admin » Po dec 11, 2006 8:36 am

Pozdravljeni,

Za to potrebujete funkcijo, ki "izreže" uime datoteke in se v originalu imenuje ExtractFileName, ena izmed možnosti pa je takšna:
Koda: Izberi vse
Function ExtractFileName(fPath As String) As String
    Dim i As Long, lcut As Long, llen As Long

    i = InStr(i + 1, fPath, "\")
    Do While i > 0
        lcut = i
        i = InStr(i + 1, fPath, "\")
    Loop

    If lcut > 0 Then
        llen = Len(fPath) - lcut
        ExtractFileName = Mid(fPath, lcut + 1, llen)
    Else
        ExtractFileName = ""
    End If
End Function


In potem samo popravite vrstico:
Koda: Izberi vse
ZacetnaCelica.Offset(i, 0).Value = .FoundFiles(i)

' v vrstico

ZacetnaCelica.Offset(i, 0).Value = ExtractFileName(.FoundFiles(i))
lp,
Matjaž Prtenjak
Administrator
admin
Site Admin
 
Prispevkov: 3492
Pridružen: Sr jul 20, 2005 10:06 pm

OdgovorNapisal/-a Stenly » Po dec 11, 2006 8:44 am

:( , imel sem to v mislih, pa sem mislil, da preveč kompliciram.

Hvala za odgovor in lp.
Stenly
 
Prispevkov: 223
Pridružen: Sr jul 27, 2005 11:29 pm


Vrni se na VBA

Kdo je prisoten

Po forumu brska: 0 registriranih uporabnikov in 0 gostov

cron