Pozdrav!
Imam problem s funkcijo filesearch...v if stavku imam pogoj execute > 0, tega pa vedno preskoči...Prilagan delček programa...Upam da zna kdo pomagati...Imam pa excel 2003 Hvala in LP
Sub test()
Set fs = Application.FileSearch
With fs
.LookIn = "d:\Moji dokumenti"
.Filename = "*.doc"
If .Execute() > 0 Then
MsgBox "There were " & .FoundFiles.Count & _
" file(s) found."
For i = 1 To .FoundFiles.Count
MsgBox .FoundFiles(i)
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub
funkcija filesearch
Hm, kje pa ste prebrali, da naj bi metoda Execute kaj vrnila? Očitno želite s tem if stavkom izvedeti, ali je kaj najdenega ali ne. če je temu tako, potem se točno tako tudi vprašajte. Torej
Koda: Izberi vse
Sub test()
Set fs = Application.FileSearch
With fs
.LookIn = "d:\Moji dokumenti"
.Filename = "*.doc"
.Execute()
if (.FoundFiles.Count > 0) Then
MsgBox "There were " & .FoundFiles.Count & " file(s) found."
For i = 1 To .FoundFiles.Count
MsgBox .FoundFiles(i)
Next i
Else
MsgBox "There were no files found."
End If
End With
End Sub
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Hvala za odgovor...ja točno to želim izvedeti z if stavkom ali je bilo kaj najdenega ali ne, toda vedno mi javi da ni nič najdenega čeprav imam zagotovo iskane datoteke na disku in v mapi v kateri iščem.
Kot da funkcija filesearch nebi delovala.....ali lahko namesto nje uporabim kakšno drugo??
Hvala in LP, Janez
Kot da funkcija filesearch nebi delovala.....ali lahko namesto nje uporabim kakšno drugo??
Hvala in LP, Janez
Obstaja kar nekaj načinov a ostali zahtevajo več programerskega znanja. Si upam trditi, da funkcijo uporabljate narobe. Najverjetneje je, da žellite iskati po podmapah, toda tega v vaši kodi niste nikjer zapisali!:
Koda: Izberi vse
...
.LookIn = "d:\Moji dokumenti"
.Filename = "*.doc"
.SearchSubFolders = True
.Execute
...
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator
Ja na d:\moji dokumenti imam zagotovo doc faile, in ko program zaženem z debug (F8) grem gledat v if stavek kjer je vedno .FoundFiles.Count postavljeno na 0, torej pogoj ni izpolnjen....čeprav bi moral biti izpolnjen....
Stvar mi je lepo delovala v excelu 2003, nato sem naložol office 2007, stvar ni delovala zato sem šel nazaj na office 2003 pa še vedno ne deluje.
Mogoče je tu razlog.
No drugače pa nisem neki programer....samouk sem...
Hvala za razumevanje, Janez:-)
Stvar mi je lepo delovala v excelu 2003, nato sem naložol office 2007, stvar ni delovala zato sem šel nazaj na office 2003 pa še vedno ne deluje.
Mogoče je tu razlog.
No drugače pa nisem neki programer....samouk sem...
Hvala za razumevanje, Janez:-)
Aha, to pa je prava informacija. FileSearch ni podprt v Excelu 2007 in zato v njem ne deluje. Deluje pa v Excelu 2003.
Če torej želite, da vam stvar deluje v obeh verzijah boste morali uporabiti funkcijo DIR. Primer in razlago lahko najdete v tejle tematiki: http://www.matjazev.net/forum/viewtopic ... hlight=dir.
Je pa tega kar nekaj po forumu, zato lahko zgoraj izberete opcijo 'Išči' in vpišete dir.
Če torej želite, da vam stvar deluje v obeh verzijah boste morali uporabiti funkcijo DIR. Primer in razlago lahko najdete v tejle tematiki: http://www.matjazev.net/forum/viewtopic ... hlight=dir.
Je pa tega kar nekaj po forumu, zato lahko zgoraj izberete opcijo 'Išči' in vpišete dir.
lp,
Matjaž Prtenjak
Administrator
Matjaž Prtenjak
Administrator