私はvbsを初めて使用しますが、ファイルをあるフォルダーから別のフォルダーにコピーし、コピーされたファイルのホールリストを読み取り、それらの名前でログファイルを作成するスクリプトを作成する必要があります。これは私がそれをカバーしたところです。次に行う必要があるのは、このリストから何らかの msgbox/IEmsg を作成することです。これmsgbox
には、スクリプトがコピーしたばかりの行の下のすべてのファイル名が含まれているはずです。
これは私のスクリプトです:
StrMonth = Month(Date)
If Len(strMonth) = 1 Then
strMonth = "0" & strMonth
End If
StrDay = Day(Date)
If Len(strDay) = 1 Then
strDay = "0" & strDay
End If
StrYear = Year(Date)
FolderName = "c:\Rafel" & strDay & "." & strMonth & "." & StrYear
Set objFSO = CreateObject("Scripting.FileSystemObject")
SET objFolder = objFSO.CreateFolder(FolderName)
objFSO.CopyFile "c:\Rafel\files\*.*", FolderName & "\"
Wscript.Sleep 1000
IF objFSO.FileExists( FolderName & "\database.txt") THEN
Wscript.Echo "Folder created, files are copied."
END IF
SET objFSO = CreateObject("Scripting.FileSystemObject")
FILEFOLDER = FolderName
SET objFolder = objFSO.GetFolder(FILEFOLDER)
SET filelist = objFolder.Files
FILELOG = FolderName & "\file log.log"
FOR EACH objFile IN filelist
FILENAME = FILENAME & "###" & Now & " File copied" & "###" & vbCrlf &_
" File name:" & objFile.Name & vbCrlf &_
" Create date:" & objFile.DateLastModified & vbCrlf &_
" Size:" & objFile.Size & vbCrlf &_
vbCrlf
NEXT
SET objFile = objFSO.CreateTextFile(FILELOG)
objFile.Write vbCrlf
objFile.Write(FILENAME)
objFile.Close
ご覧のとおり、コピーを作成し、ファイルのリストを含むログ ファイルを作成する限り機能します。しかし、これらのファイルのリストを含む 1 つのメッセージ ボックスを作成するにはどうすればよいでしょうか? 試してみましたが、for each
ファイルごとに msgbox を「スパム」するだけです。
私は初心者なので、plsはそれを念頭に置いています。:)