22. juli 2010 - 18:13Der er
9 kommentarer og 1 løsning
søg efter filer med et bestemt indhold
Hej Jeg ønsker at lave et lille vb-program som kan liste alle excel filer men et bestemt indhold ( eks 12323 ) fra et fast katalog. Hvordan søger jeg efter et indhold i en file , styresystemet er XP. mvh oleelo
Hej Hvis du har et forslag til en løsning i vba kan jeg godt bruge den. Det jeg er ude efter, svare til en liste af file som også kan fåes i stifinder hvis der søges efter indholdet af en file. Jeg tror der skal bruges noget API ?? som jeg intet kender til mvh oleelo
Dim søgeord Public Sub multiSøgning() søgeord = ActiveSheet.Range(søgeOrdCelle) If CStr(søgeord) <> "" Then udførSøgning End If
MsgBox "Søgning er afsluttet" End Sub Private Sub udførSøgning() Dim fs, f, f1, fc, ræk As Long Set fs = CreateObject("Scripting.FileSystemObject") Set f = fs.GetFolder(søgesti) Set fc = f.Files
ræk = startRæk
For Each f1 In fc If InStr(LCase(f1.Name), "xls") > 0 And InStr(f1.Name, "~") = 0 Then If søgIFilen(f1.Name) = True Then ActiveSheet.Cells(ræk, 1) = f1.Name ræk = ræk + 1 End If End If Next End Sub Private Function søgIFilen(filnavn) Dim xlsFil As Object, fundet As Boolean Dim ark As Worksheet, område
Set xlsFil = CreateObject("Excel.Application") With xlsFil .Visible = False .Workbooks.Open søgesti & filnavn End With
søgIFilen = False
For Each ark In xlsFil.ActiveWorkbook.Sheets ark.Activate
If søgEfter(ark, søgeord) = True Then søgIFilen = True Exit For End If Next ark
xlsFil.Application.Quit Set xlsFil = Nothing End Function Private Function søgEfter(ark, søgeord) With ark.Range("A1:IV65000") Set c = .Find(søgeord, LookIn:=xlValues, LookAt:=xlWhole) If Not c Is Nothing Then søgEfter = True Else søgEfter = False End If End With End Function
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.