Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Поиск файлов на диске (Excel) / 14 сообщений из 14, страница 1 из 1
27.06.2006, 11:09:59
    #33816131
Jetus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)


Привет всем!

Нужна функция, которая ищет файлы на винчестере по маске.


______________________________
Never Surrender - Nothing Impossible!
...
Рейтинг: 0 / 0
27.06.2006, 11:25:48
    #33816190
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
зацени мужиииикк
http://www.datapigtechnologies.com/freeware.htm
...
Рейтинг: 0 / 0
27.06.2006, 12:36:35
    #33816464
HandKot
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
Код: plaintext
MyFile = Dir("C:\WINDOWS\*.INI")
...
Рейтинг: 0 / 0
27.06.2006, 14:35:42
    #33816920
Jetus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)


2 Ivan3: макросы в проекте заблокированы от просмотра

2 HandKot: большое спасибо!


______________________________
Never Surrender - Nothing Impossible!
...
Рейтинг: 0 / 0
27.06.2006, 14:44:29
    #33816955
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
автор2 Ivan3: макросы в проекте заблокированы от просмотра да, заблокированы:( у вас есть опыт вскрытия файлов с расширением *. mde?
...
Рейтинг: 0 / 0
27.06.2006, 18:44:30
    #33817729
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
кусок кода нарыл
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
Private Sub OK_Click()
If TypeName(Selection) <> "Range" Then
MsgBox "Please select a range.", vbCritical, AT
Exit Sub
Else
On Error Resume Next
Application.StatusBar = "Now processing...."
ActiveCell.Value = "Filename:"
If ChkFileSize Then ActiveCell.Offset( 0 ,  1 ).Value = "Filesize"
If chkFileDate Then ActiveCell.Offset( 0 ,  2 ).Value = "Filedate"
ActiveCell.Offset( 1 ,  0 ).Activate
Set fs = Application.FileSearch
fs.NewSearch
If SearchDirectory = "" Then
MsgBox "Sorry, no directory to search", vbCritical, AT
Exit Sub
End If
With fs
.LookIn = SearchDirectory
.SearchSubFolders = IncludeSubfolders
.FileType = msoFileTypeAllFiles
.Filename = SearchFileTypes
.MatchTextExactly = False
If .Execute() >  0  Then
Application.ScreenUpdating = False
For i =  1  To .FoundFiles.Count
strFileName = .FoundFiles(i)
If strFileName Like SearchFileTypes Then
ActiveCell.Value = strFileName
If ChkFileSize = True Then ActiveCell.Offset( 0 ,  1 ).Value = Int(FileLen(strFileName) /  1024 ) & " kb"
If chkFileDate = True Then ActiveCell.Offset( 0 ,  2 ).Value = FileDateTime(strFileName)
ActiveCell.Offset( 1 ,  0 ).Activate
End If
Next i
Application.ScreenUpdating = True
fs = Empty
Else
MsgBox "Sorry, no files found.", vbCritical, AT
End If
End With
ActiveCell.EntireColumn.AutoFit
If IncludeSubfolders.Value = True Then ActiveCell.Offset( 0 ,  1 ).EntireColumn.AutoFit
If chkFileDate.Value = True Then ActiveCell.Offset( 0 ,  2 ).EntireColumn.AutoFit
fs = Empty
Application.StatusBar = False
End If
End Sub
...
Рейтинг: 0 / 0
27.06.2006, 18:45:17
    #33817733
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
код для формы
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Private Sub UserForm_Initialize()
HideCloseButton Me
Me.MpFileName.Value =  0 
SearchDirectory.Value = Empty
IncludeSubfolders.Value = False
SearchFileTypes.Value = "*.*"
On Error GoTo ErrNoPrinter
Dim strNothing As String
strNothing = ActiveSheet.PageSetup.LeftHeader
Exit Sub
ErrNoPrinter:
lblPageHeaderFooter.Caption = "You don't have a printer installed." & vbNewLine & _
"Without a printer you can't adjust the header and footer."
Me.CmdFootercenter.Enabled = False
Me.CmdFooterleft.Enabled = False
Me.CmdFooterright.Enabled = False
Me.CmdHeadercenter.Enabled = False
Me.CmdHeaderleft.Enabled = False
Me.CmdHeaderright.Enabled = False
End Sub
...
Рейтинг: 0 / 0
27.06.2006, 19:06:38
    #33817777
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Sub ListFiles()
    Dim Msg As String
    Dim Directory As String
    Dim r As Long, i As Long
    
    Msg = "Óêàæèòå ðàñïîëîæåíèå ïàïêè, äëÿ êîòîðîé îòîáðàæàåòñÿ ñïèñîê ôàéëîâ."
    Directory = GetDirectory(Msg)
    If Directory = "" Then Exit Sub
    If Right(Directory,  1 ) <> "\" Then Directory = Directory & "\"
    
'   Âñòàâêà çàãîëîâîêîâ
    r =  1 
    Cells.ClearContents
    Cells(r,  1 ) = "Èìÿ ôàéëà"
    Cells(r,  2 ) = "Ðàçìåð"
    Cells(r,  3 ) = "Äàòà/âðåìÿ"
    Range("A1:C1").Font.Bold = True
    r = r +  1 

    On Error Resume Next
    With Application.FileSearch
        .NewSearch
        .LookIn = Directory
        .Filename = "*.*"
        .SearchSubFolders = True
        .Execute
        For i =  1  To .FoundFiles.Count
            Cells(r,  1 ) = .FoundFiles(i)
            Cells(r,  2 ) = FileLen(.FoundFiles(i))
            Cells(r,  3 ) = FileDateTime(.FoundFiles(i))
            r = r +  1 
        Next i
    End With
End Sub
кракозябры это комментарии и надписи на русском языке
...
Рейтинг: 0 / 0
27.06.2006, 19:07:27
    #33817779
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
можно еще кнопку приладить вроде
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
Function GetDirectory(Optional Msg) As String
    Dim bInfo As BROWSEINFO
    Dim path As String
    Dim r As Long, x As Long, pos As Integer

' Êîðíåâàÿ ïàïêà = Ðàáî÷èé ñòîë
    bInfo.pidlRoot =  0 &

' Çàãîëîâîê îêíà
    If IsMissing(Msg) Then
        bInfo.lpszTitle = "Select a folder."
    Else
        bInfo.lpszTitle = Msg
  End If

' Òèï âîçâðàùàåìîé ïàïêè
    bInfo.ulFlags = &H1

' Îòîáðàæåíèå îêíà
    x = SHBrowseForFolder(bInfo)

' Ïðåäñòàâëåíèå ðåçóëüòàòà
    path = Space$( 512 )
    r = SHGetPathFromIDList(ByVal x, ByVal path)
    If r Then
        pos = InStr(path, Chr$( 0 ))
        GetDirectory = Left(path, pos -  1 )
    Else
        GetDirectory = ""
  End If
End Function
...
Рейтинг: 0 / 0
27.06.2006, 19:08:52
    #33817781
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
знание надмевает, поэтом шобы не надмеваться, надо делиться знаниями
...
Рейтинг: 0 / 0
27.06.2006, 19:12:37
    #33817788
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
а вообще эта штука выглядит в рабочем состоянии так (см. файл) там можно задать расширение, которое нужно.
...
Рейтинг: 0 / 0
27.06.2006, 19:14:42
    #33817790
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
а вообще эта штука выглядит в рабочем состоянии так (см. файл) там можно задать расширение, которое нужно.
...
Рейтинг: 0 / 0
29.06.2006, 09:35:47
    #33820790
Jetus
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)


2 Ivan33: большое спасибо, буду разбираться.


______________________________
Never Surrender - Nothing Impossible!
...
Рейтинг: 0 / 0
29.06.2006, 09:37:01
    #33820796
Ivan33
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Поиск файлов на диске (Excel)
главное в этом делей с ума не сойти
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Поиск файлов на диске (Excel) / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]