2017-09-11 1 views
0

전자 메일에있는 Excel (.xlsm) 파일을 저장하려고합니다. 다른 이메일을 통해이 이메일을받습니다.전자 메일 첨부 파일 첨부 저장 중

.xlsm 파일을 공유 드라이브에 다운로드하고 싶습니다. 여러 온라인 포럼과 MSDN 도움말을 보면 다음 코드를 작성했습니다.

이 코드를 실행할 때 오류가 발생하지 않습니다. 또한 어떤 파일도 저장되지 않습니다.

Public Sub saveAttachtoDisk(itm As Outlook.MailItem) 
    Dim objAtt As Outlook.Attachment 
    Dim msgAtt As Outlook.Attachment 
    Dim saveFolder As String 
    ' a to i are dummy names and have been replaced with correct folder path in real code 
    saveFolder = "\\a\b\c\d\e\f\g\h\i" 
    For Each objAtt In itm.Attachments 
     If InStr(objAtt.DisplayName, ".msg") Then 
      For Each msgAtt In itm.Attachments 
       If InStr(msgAtt.DisplayName, ".xlsm") Then 
        msgAtt.SaveAsFile saveFolder & "\" & msgAtt.DisplayName 
       End If 
      Next 
     Set msgAtt = Nothing 
    End If 
Next 
Set objAtt = Nothing 
End Sub 
+2

가능한 복제 (https://stackoverflow.com/questions/7890612/vba [첨부 파일을 저장하는 VBA 코드는 첨부 파일로 다른 이메일 안에이었던 Outlook 전자 메일에서 (엑셀 파일)] -code-to-save-an-attachment-excel-out-of-outlook-email-inside-inside-file) – niton

+0

@niton 원하는 결과가 동일하지만이 경우 직면 한 특정 문제는 그 사건과 다른 –

답변

0

줄마다 코드를 실행하는 동안 해결책을 찾았습니다.

if 문은 첨부 파일의 표시 이름에 ".msg"및 ".xlsm"단어를 찾습니다. 조사에서 표시 이름은 파일 확장명을 표시 이름으로 사용하지 않습니다.

따라서이 문제를 해결하려면 ".msg"및 ".xlsm"을 파일 이름으로 바꿔야합니다.

감사의

관련 문제