Outlook 에서 이메일 수신 시 첨부 파일을 자동으로 인쇄하려면 어떻게 하나요?
이 튜토리얼에서는 VBA 스크립트와 Outlook 규칙을 결합하여 특정 이메일이 Outlook 에 도착할 때 첨부 파일을 자동으로 인쇄하는 방법을 설명합니다。
특정 이메일 수신 시 첨부 파일 자동 인쇄
특정 발신자의 수신 이메일 첨부 파일을 자동으로 인쇄하고 싶다고 가정해 보겠습니다。 다음 단계에 따라 이를 설정할 수 있습니다。
1 단계: Outlook 에서 스크립트 생성
먼저 Outlook 에서 VBA 스크립트를 생성해야 합니다。
1. Outlook 을 실행한 후Alt+F11키를 동시에 눌러Microsoft Visual Basic for Applications창을 엽니다。
2. Microsoft Visual Basic for Applications창에서Project1>Microsoft Outlook Objects>ThisOutlookSession을 두 번 클릭하여ThisOutlookSession(코드)창을 열고, 다음 코드를 이 코드 창에 복사합니다。

VBA 코드 1: 이메일 수신 시 첨부 파일(모든 유형의 첨부 파일)을 자동으로 인쇄
Sub AttachementAutoPrint(Item As Outlook.MailItem)
'Updated by Extendoffice 20230223
Dim xFS As FileSystemObject
Dim xTempFolder As String
Dim xAtt As Attachment
Dim xShell As Object
Dim xFolder As Object, xFolderItem As Object
Dim xFileName As String
On Error GoTo xError
If Item.Attachments.Count = 0 Then Exit Sub
Set xFS = New FileSystemObject
xTempFolder = xFS.GetSpecialFolder(TemporaryFolder)
xTempFolder = xTempFolder & "\ATMP" & Format(Item.ReceivedTime, "yyyymmddhhmmss")
If Not xFS.FolderExists(xTempFolder) Then
MkDir (xTempFolder)
End If
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.NameSpace(0)
For Each xAtt In Item.Attachments
If IsEmbeddedAttachment(xAtt) = False Then
xFileName = xTempFolder & "\" & xAtt.FileName
xAtt.SaveAsFile (xFileName)
Set xFolderItem = xFolder.ParseName(xFileName)
xFolderItem.InvokeVerbEx ("print")
End If
Next xAtt
Set xFS = Nothing
Set xFolder = Nothing
Set xFolderItem = Nothing
Set xShell = Nothing
xError:
If Err <> 0 Then
MsgBox Err.Number & " - " & Err.Description, , "Kutools for Outlook"
Err.Clear
End If
Exit Sub
End Sub
Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
xHtml = xItem.HTMLBody
xID = "cid:" & xCid
If InStr(xHtml, xID) > 0 Then
IsEmbeddedAttachment = True
End If
End If
End Function 참고:이 코드는 이메일로 수신된 모든 유형의 첨부 파일 인쇄를 지원합니다。 PDF 파일와 같이 특정 유형의 첨부 파일만 인쇄하려면 다음 VBA 코드를 적용하세요。
VBA 코드 2: 이메일 수신 시 지정된 유형의 첨부 파일을 자동으로 인쇄
Sub AttachementAutoPrint(Item As Outlook.MailItem)
'Updated by Extendoffice 20230223
Dim xFS As FileSystemObject
Dim xTempFolder As String
Dim xAtt As Attachment
Dim xShell As Object
Dim xFolder As Object, xFolderItem As Object
Dim xFileType As String, xFileName As String
On Error GoTo xError
If Item.Attachments.Count = 0 Then Exit Sub
Set xFS = New FileSystemObject
xTempFolder = xFS.GetSpecialFolder(TemporaryFolder)
xTempFolder = xTempFolder & "\ATMP" & Format(Item.ReceivedTime, "yyyymmddhhmmss")
If Not xFS.FolderExists(xTempFolder) Then
MkDir (xTempFolder)
End If
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.NameSpace(0)
For Each xAtt In Item.Attachments
If IsEmbeddedAttachment(xAtt) = False Then
xFileName = xAtt.FileName
xFileType = LCase$(Right$(xFileName, VBA.Len(xFileName) - VBA.InStrRev(xFileName, ".")))
xFileName = xTempFolder & "\" & xFileName
Select Case xFileType
Case "pdf" 'change "pdf" to the file extension you want to print
xAtt.SaveAsFile (xFileName)
Set xFolderItem = xFolder.ParseName(xFileName)
xFolderItem.InvokeVerbEx ("print")
End Select
End If
Next xAtt
Set xFS = Nothing
Set xFolder = Nothing
Set xFolderItem = Nothing
Set xShell = Nothing
xError:
If Err <> 0 Then
MsgBox Err.Number & " - " & Err.Description, , "Kutools for Outlook"
Err.Clear
End If
Exit Sub
End Sub
Function IsEmbeddedAttachment(Attach As Attachment)
Dim xItem As MailItem
Dim xCid As String
Dim xID As String
Dim xHtml As String
On Error Resume Next
IsEmbeddedAttachment = False
Set xItem = Attach.Parent
If xItem.BodyFormat <> olFormatHTML Then Exit Function
xCid = ""
xCid = Attach.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")
If xCid <> "" Then
xHtml = xItem.HTMLBody
xID = "cid:" & xCid
If InStr(xHtml, xID) > 0 Then
IsEmbeddedAttachment = True
End If
End If
End Function
참고 사항:
3. 도구>참조를 클릭합니다。 나타나는참조 – Project1대화 상자에서Microsoft Scripting Runtime확인란을 선택한 후확인버튼을 클릭합니다。

4. 코드를 저장한 후Alt+Q키를 눌러Microsoft Visual Basic for Applications창을 닫습니다。
참고:Outlook 에서모든 매크로 사용옵션이 활성화되어 있는지 확인하세요。 다음 단계에 따라 이 옵션을 확인할 수 있습니다。

2 단계: 스크립트를 사용하는 규칙 생성
Outlook 에 VBA 스크립트를 추가한 후 특정 조건에 따라 해당 스크립트를 사용하는 규칙을 생성해야 합니다。
1. 홈 탭으로 이동하여규칙>규칙 및 알림 관리를 클릭합니다。

2. 규칙 및 알림대화 상자에서새 규칙버튼을 클릭하여 규칙을 생성합니다。
팁:Outlook 에 여러 이메일 계정을 추가한 경우, 규칙을 적용할 폴더인이 폴더에 변경 사항 적용드롭다운 목록에서 계정을 지정하세요。 그렇지 않으면 현재 계정 지정의 받은 편지함에 적용됩니다。

3. 첫 번째규칙 마법사대화 상자에서수신 메시지에 규칙 적용을1 단계 1상자에서 선택한 후다음

4. 두 번째규칙 마법사대화 상자에서 다음을 수행해야 합니다。

5. 세 번째규칙 마법사대화 상자에서 다음과 같이 설정해야 합니다。

팁:규칙에서 “스크립트 실행” 옵션이 표시되지 않는 경우, 다음 문서에서 설명하는 방법을 따라 표시할 수 있습니다:규칙 마법사Outlook 규칙에서 누락된 '스크립트 실행‘ 옵션 복원하기.
6. 그런 다음 예외를 묻는 또 다른규칙 마법사대화 상자가 나타납니다。 필요에 따라 예외를 선택하거나, 그렇지 않으면 아무것도 선택하지 않고다음버튼을 클릭합니다。

7. 마지막규칙 마법사에서 규칙 이름을 지정한 후마침버튼을 클릭합니다。

8. 그러면규칙 및 알림대화 상자로 돌아가며, 생성한 규칙이 목록에 표시됩니다。확인버튼을 클릭하여 전체 설정을 완료합니다。

이제부터 지정된 사람의 이메일이 수신되면 첨부 파일이(가) 자동으로 인쇄됩니다。
관련 문서
Outlook 에서 한 이메일 또는 선택한 이메일의 첨부 파일만 인쇄하기
Outlook 에서는 이메일을 인쇄할 수 있지만, 한 이메일이나 선택한 이메일에서 첨부 파일만 인쇄해 보셨나요? 이 문서에서는 이 작업을 해결하는 팁을 소개합니다。
Outlook 에서 이메일의 메시지 헤더만 인쇄하기
Outlook 에서 이메일을 인쇄하면 해당 이메일의 메시지 헤더와 본문이 모두 인쇄됩니다。 그러나 특별한 경우, 제목, 발신자, 수신자 등의 정보가 포함된 메시지 헤더만 인쇄해야 할 수도 있습니다。 이 문서에서는 이를 수행하는 두 가지 솔루션을 소개합니다。
Outlook 에서 지정된/사용자 정의 날짜 범위 기간의 캘린더 인쇄하기
일반적으로 Outlook 에서 월 보기로 캘린더를 인쇄할 때 현재 선택된 날짜가 포함된 달이 자동으로 선택됩니다. 하지만 3 개월, 반년 등 사용자 정의 날짜 범위 기간 내의 캘린더를 인쇄해야 할 수도 있습니다。 이 문서에서는 이를 위한 해결 방법을 소개합니다。
Outlook 에서 사진이 포함된 연락처 인쇄하기
일반적으로 Outlook 에서 연락처를 인쇄할 때 연락처의 사진은 인쇄되지 않습니다。 그러나 사진과 함께 연락처를 인쇄하면 더 인상 깊을 수 있습니다。 이 문서에서는 이를 구현하는 몇 가지 해결 방법을 소개합니다。
Outlook 에서 이메일 일부분만 인쇄하기
이메일을 받았을 때 전체 메시지를 인쇄하는 대신 이메일 내용 중 특정 부분만 인쇄해야 한다면 어떻게 하시겠습니까? 실제로 Outlook 은 Firefox 나 Internet Explorer 같은 인터넷 브라우저의 도움을 받아 이러한 작업을 수행할 수 있습니다。 여기서는 인터넷 브라우저를 예로 들어 다음 튜토리얼을 설명합니다。
최고의 Office 생산성 도구
Kutools for Outlook 의 완전히 새로운 버전을 100+가지 놀라운 기능과 함께 경험해 보세요!지금 다운로드하세요!
🤖KUTOOLS AI:고급 AI 기술을 활용하여 이메일 회신, 요약, 최적화, 확장, 번역, 작성 등 이메일 관련 작업을 손쉽게 처리합니다。
📧이메일 자동화:자동 회신(POP 및 IMAP 지원)/이메일 예약 발송/이메일 발송 시 규칙에 따라 자동 참조/숨은 참조/자동 전달(고급 규칙)/자동 인사말 추가/수신자 여러 명이 포함된 이메일을 자동으로 개별 메시지로 분할...
📨이메일 관리:이메일 회수/제목 등을 기준으로 피싱 이메일 차단/중복된 이메일 삭제/고급 검색/폴더 정리...
📁첨부파일 프로:일괄 저장/일괄 분리/일괄 압축/자동 저장/자동 분리/자동 압축...
🌟인터페이스 마법:😊더 예쁘고 멋진 이모지 제공/중요 이메일 수신 시 알림/Outlook 종료 대신 최소화...
👍한 번의 클릭으로 해결:모두 회신(첨부 파일 포함)/피싱 이메일 방지/🕘발신자의 현재 시간 시간대 표시...
👩🏼🤝👩🏻연락처 및 캘린더:선택한 이메일에서 연락처 추가 일괄 생성/연락처 그룹를 개별 그룹으로 분할/생일 알림 제거...
Kutools 를 선호하는 언어로 사용하세요 – 영어, 스페인어, 독일어, 프랑스어, 중국어 및 40+개의 다른 언어를 지원합니다!
한 번의 클릭으로 즉시 Kutools for Outlook 의 잠금을 해제하세요。 더 이상 기다리지 마시고 지금 다운로드하여 업무 효율을 높이세요!


🚀 한 번의 클릭으로 다운로드 — 모든 Office 애드인 받기
강력히 권장: Kutools for Office (5-in-1)
한 번의 클릭으로다섯 개의 설치 프로그램을동시에 다운로드하세요 —Kutools for Excel, Outlook, Word, PowerPoint및Office Tab Pro.지금 다운로드하세요!
- ✅한 번의 클릭으로 편리하게: 다섯 개의 설치 패키지를 한 번에 다운로드하세요。
- 🚀모든 Office 작업에 대비 완료: 필요한 시점에 필요한 애드인을 설치하세요。
- 🧰포함됨: Kutools for Excel / Kutools for Outlook / Kutools for Word / Office Tab Pro / Kutools for PowerPoint