Привет всем! Возникла такая проблема. Есть база в Access (на случай всякий - офис XP). В базе куча названий песен. На винте есть тоже куча файлов mp3, wav и т.д. Нужно по нажатию кнопки в форме отыскать файлы на винте в чьих именах присутсчтвуют названия песен из базы. Может быть полное совпадение или отдельные слова. Короче нужно организовать поиск по маске. Пробовал рекурсивный обход папок
| Код | Dim fso As New FileSystemObject Dim file As String Dim inpath As String
Private Sub Command1_Click() Dim exists As Boolean exists = FileExists("flag.doc", "E:\") Text1.Text = inpath End Sub
Private Function FileExists(Name As String, Path As String) As Boolean If (Not fso.FolderExists(Path)) Then Exit Function End If file = Name If Right(Path, 1) <> "\" Then Path = Path & "\" FileExists = Help(Path) End Function
Private Function Help(Path As String) As Boolean On Error Resume Next Dim sfld As Folder
'Text1.Text = Path
'условие остановки рекурсии If fso.FileExists(Path & file) Then inpath = Path Help = True Exit Function End If
'погружение в рекурсию (в следующие подпапки) For Each sfld In fso.GetFolder(Path).SubFolders DoEvents If Help(sfld.Path & "\") Then Help = True Exit For End If Next End Function
|
Но насколько японял он ищет только конкретный файл в папке. Не помню, но по-моему есть CommonDialog отвечающий за поиск файлов. Но отыскать его в Acess мне не удалось. Помогите, плиз. С уважением, АМТ |