View Full Version : دستور filesearch در اكسس 2007 كار نميكند
reza792
دوشنبه 08 خرداد 1391, 08:48 صبح
با سلام
.
اين دستور در اكسس 2003 كار ميكنه ولي در 2007 ارور ميده.
لطفا راهنمايي بفرماييد
Dim FS
Dim I
Set FS = Application.FileSearch
With FS
.LookIn = "D:\"
.FileName = "tfsdffsfes*.*"
If .Execute > 0 Then
MsgBox "There were " & .FoundFiles.Count & _
" file(s) found."
Else
MsgBox "There were no files found."
End If
End With
RESMAILY
دوشنبه 08 خرداد 1391, 18:51 عصر
به نام خدا
با سلام. اين متد در 2007 حذف شده است. از api استفاده كنيد.
reza792
چهارشنبه 10 خرداد 1391, 19:58 عصر
با سلام و تشکر از شما
چنین دستوری در help اکسس 2007 وجود داره. ولی پیغام میده که باید به رفرنس وی بی اضافه بشه. به هر حال اگر شما مطمئن هستید لطفا در خصوص دستور api به اینجانب کمک نمایید.
RESMAILY
شنبه 13 خرداد 1391, 17:54 عصر
به نام خدا
به موضوعي كه اشاره كرديد دقت نكردم . ولي نمونه زير پاسخ نسبتا كاملي است به سوال شما
mehdi_fiz
سه شنبه 16 خرداد 1391, 23:34 عصر
سلام دوست عزیز
از کد زیر می تونید استفاده کنید
Public Sub search2(FolderPath As String)
On Error GoTo test
Dim FileNameWithPath As Variant
Dim ListOfFilenamesWithParh As New Collection
Dim cont As Integer
Call FileSearch(ListOfFilenamesWithParh, FolderPath, "*.mdb", False)
cont = ListOfFilenamesWithParh.Count
For i = 1 To cont
FileNameWithPath = ListOfFilenamesWithParh(i)
msgbox FileNameWithPath
Next i
test:
If Err.Number <> 0 Then MsgBox Err.Description & ":" & Err.Number
End Sub
Private Sub FileSearch(pFoundFiles As Collection, pPath As String, pMask As String, pIncludeSubdirectories As Boolean)
Dim DirFile As String
Dim CollectionItem As Variant
Dim SubDirCollection As New Collection
' Add backslash at the end of path if not present
pPath = Trim(pPath)
If Right(pPath, 1) <> "\" Then pPath = pPath & "\"
' Searching files accordant with mask
DirFile = Dir(pPath & pMask)
Do While DirFile <> ""
pFoundFiles.add pPath & DirFile 'add file name to list(collection)
DirFile = Dir ' next file
Loop
' Procedure exiting if searching in subdirectories isn't enabled
If Not pIncludeSubdirectories Then Exit Sub
' Searching for subdirectories in path
DirFile = Dir(pPath & "*", vbDirectory)
Do While DirFile <> ""
' Add subdirectory to local list(collection) of subdirectories in path
If DirFile <> "." And DirFile <> ".." Then If ((GetAttr(pPath & DirFile) And vbDirectory) = 16) Then SubDirCollection.add pPath & DirFile
DirFile = Dir 'next file
Loop
' Subdirectories list(collection) processing
For Each CollectionItem In SubDirCollection
Call FileSearch(pFoundFiles, CStr(CollectionItem), pMask, pIncludeSubdirectories) ' Recursive procedure call
Next
End Sub
موفق باشید
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.