다음은 MS Outlook의 각 .msg 파일을 열어 필요한 정보를 검색 한 다음 파일 이름을 ReceivedTime + Subject + SenderName으로 변경하는 모든 MS Outlook .msg 파일을 처리하는 VBScript (.vbs)입니다 . 예 : 27102017 123241 AM - 회의 일정 - George.msgVBScript 날짜 서식
날짜 형식을 DDMMYYYY에서 YYYYMMDD로 변경하는 데 문제가 있습니다. varNewFileName = ReplaceIllegalCharacters (olkMessage.ReceivedTime ... varNewFileName = ReplaceIllegalCharacters (Format (olkMessage.ReceivedTime, "yyyymmdd-hhnnss") ...)를 대체했습니다. 그러나 스크립트를 실행하면 새 파일 이름이 날짜와 시간없이 반환됩니다. . 회의 의제 - - 예를 들어 누군가가 날짜 형식을 지원 할 수 있다면 George.msg
나는 매우 감사하게 될 것입니다
조지
On Error Resume Next
Dim olkApp, olkMessage, objFSO, objFile, varFile, varNewFileName
Set olkApp = GetObject(,"Outlook.Application")
If TypeName(olkApp) = "Nothing" Then
Set olkApp = CreateObject("Outlook.Application")
End If
Set objFSO = CreateObject("Scripting.FileSystemObject")
For Each varFile In WScript.Arguments
Set olkMessage = olkApp.CreateItemFromTemplate(varFile)
varNewFileName = ReplaceIllegalCharacters(olkMessage.ReceivedTime & " " & olkMessage.Subject & " From " & olkMessage.SenderName & " To " & olkMessage.To) & ".msg"
Set objFile = objFSO.GetFile(varFile)
objFile.Name = varNewFileName
Next
Set objFile = Nothing
Set objFSO = Nothing
Set olkMessage = Nothing
Set olkApp = Nothing
WScript.Quit
Function ReplaceIllegalCharacters(strSubject)
Dim strBuffer
strBuffer = Replace(strSubject, ":", "")
strBuffer = Replace(strBuffer, "\", "")
strBuffer = Replace(strBuffer, "/", "")
strBuffer = Replace(strBuffer, "?", "")
strBuffer = Replace(strBuffer, Chr(34), "'")
strBuffer = Replace(strBuffer, "|", "")
ReplaceIllegalCharacters = strBuffer
End Function