0

我需要一个项目的帮助,在该项目中我必须打开一个文本文件列表,在其内容中找到一个模式,然后根据模式移动到其他文件夹。

例如,在一个文本文件列表中,我必须找出其中的哪些里面写有“blue”这个词,然后它们只将这些文件移动到另一个名为“Blue”的文件夹中。

我试图使用命令 FileSystemObject 来完成它,但我有点迷失了。

非常感谢提前!!

4

1 回答 1

1
Dim sDir As String
Dim sPath As String
Dim sPattern as String
Dim sReadedData as String
dim sDestiny as string
dim sPathDestiny as string
Dim fso As Object

Set fso = VBA.CreateObject("Scripting.FileSystemObject")

sPath$ = "c:\YourFolder"
sDir$ = Dir(sPath, vbDirectory)
sPattern= "abcdefg"
sDestiny="c:\DestinyFolder"

If sDir = "" Then
MsgBox "Path " & sDir & " Not Found"
End
End If
sDir$ = Dir(sPath & "\*.txt")
Do Until sDir = ""
     sPathDestiny=Replace(sDir, sPath, sDestiny)
     Open sDir$ For Input As #1
     do until EOF(1)   
         Input #1, sReadedData
     loop
     if InStr(sReadedData, sPattern)>0 then
         Call fso.CopyFile(sDir, sPathDestiny)
     end if
Loop

这是主要思想。玩它。

于 2015-09-11T12:01:06.693 回答