Skip to main content

워크시트를 PDF 파일로 저장하고 아웃룩을 통해 첨부파일로 이메일 보내는 방법은 무엇입니까?

Author: Siluvia Last Modified: 2025-05-20

어떤 경우에는 워크시트를 PDF 파일로 아웃룩을 통해 보내야 할 수 있습니다. 일반적으로 워크시트를 PDF 파일로 수동으로 저장한 다음, 아웃룩에서 해당 PDF 파일을 첨부한 새 이메일을 작성하고 마지막으로 이를 보내야 합니다. 이러한 과정을 단계별로 수동으로 진행하는 것은 시간이 많이 소요됩니다. 이 문서에서는 엑셀에서 워크시트를 빠르게 PDF 파일로 저장하고 자동으로 아웃룩을 통해 첨부파일로 보내는 방법을 알려드리겠습니다.

VBA 코드를 사용하여 워크시트를 PDF 파일로 저장하고 첨부파일로 이메일 보내기


VBA 코드를 사용하여 워크시트를 PDF 파일로 저장하고 첨부파일로 이메일 보내기

아래 VBA 코드를 실행하면 활성 워크시트가 자동으로 PDF 파일로 저장되고, 아웃룩을 통해 첨부파일로 이메일이 전송됩니다. 아래 단계에 따라 진행하세요.

1. PDF로 저장하고 보낼 워크시트를 열고 Alt + F11 키를 동시에 눌러 Microsoft Visual Basic for Applications 창을 엽니다.

2. Microsoft Visual Basic for Applications 창에서 삽입 > 모듈을 클릭합니다. 그런 다음 아래 VBA 코드를 복사하여 코드 창에 붙여넣습니다. 스크린샷 보기:

VBA 코드: 워크시트를 PDF 파일로 저장하고 첨부파일로 이메일 보내기

Sub Saveaspdfandsend()
Dim xSht As Worksheet
Dim xFileDlg As FileDialog
Dim xFolder As String
Dim xYesorNo As Integer
Dim xOutlookObj As Object
Dim xEmailObj As Object
Dim xUsedRng As Range

Set xSht = ActiveSheet
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)

If xFileDlg.Show = True Then
   xFolder = xFileDlg.SelectedItems(1)
Else
   MsgBox "You must specify a folder to save the PDF into." & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Must Specify Destination Folder"
   Exit Sub
End If
xFolder = xFolder + "\" + xSht.Name + ".pdf"

'Check if file already exist
If Len(Dir(xFolder)) > 0 Then
    xYesorNo = MsgBox(xFolder & " already exists." & vbCrLf & vbCrLf & "Do you want to overwrite it?", _
                      vbYesNo + vbQuestion, "File Exists")
    On Error Resume Next
    If xYesorNo = vbYes Then
        Kill xFolder
    Else
        MsgBox "if you don't overwrite the existing PDF, I can't continue." _
                    & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Exiting Macro"
        Exit Sub
    End If
    If Err.Number <> 0 Then
        MsgBox "Unable to delete existing file.  Please make sure the file is not open or write protected." _
                    & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Unable to Delete File"
        Exit Sub
    End If
End If

Set xUsedRng = xSht.UsedRange
If Application.WorksheetFunction.CountA(xUsedRng.Cells) <> 0 Then
    'Save as PDF file 
    xSht.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xFolder, Quality:=xlQualityStandard
    
    'Create Outlook email 
    Set xOutlookObj = CreateObject("Outlook.Application")
    Set xEmailObj = xOutlookObj.CreateItem(0)
    With xEmailObj
        .Display
        .To = ""
        .CC = ""
        .Subject = xSht.Name + ".pdf"
        .Attachments.Add xFolder
        If DisplayEmail = False Then
            '.Send
        End If
    End With
Else
  MsgBox "The active worksheet cannot be blank"
  Exit Sub
End If
End Sub

3. 코드를 실행하기 위해 F5 키를 누릅니다. 찾아보기 대화상자에서 PDF 파일을 저장할 폴더를 선택한 후 확인 버튼을 클릭합니다.

run vba code to select a folder to save this PDF file

참고:

1. 이제 활성 워크시트가 PDF 파일로 저장되었습니다. 그리고 PDF 파일은 워크시트 이름으로 명명됩니다.
2. 활성 워크시트가 비어 있는 경우, 확인 버튼을 클릭한 후 아래 스크린샷과 같은 대화상자가 나타납니다.

If the active worksheet is blank,a warning prompt box is popped out

4. 이제 새로운 아웃룩 이메일이 생성되었으며, 첨부된 필드에 PDF 파일이 첨부파일로 나열된 것을 확인할 수 있습니다. 스크린샷 보기:

a new Outlook email is created with the PDF file as an attachment

5. 이 이메일을 작성한 후 보내세요.
6. 이 코드는 아웃룩을 메일 프로그램으로 사용할 때만 유효합니다.

워크시트 또는 여러 워크시트를 한 번에 개별 PDF 파일로 쉽게 저장하기:

Kutools for Excel워크북 분리 기능을 사용하면 아래 데모와 같이 워크시트 또는 여러 워크시트를 한 번에 개별 PDF 파일로 쉽게 저장할 수 있습니다. 지금 다운로드하여 사용해 보세요! (30-day 무료 평가판)

save multiple worksheets as separate PDF files by kutools


관련 문서:

최고의 오피스 생산성 도구

? Kutools AI Aide: 지능형 실행, 코드 생성, 사용자 정의 수식 작성, 데이터 분석 및 차트 생성, Kutools 함수 호출을 기반으로 데이터 분석 혁신…
인기 기능: 중복 찾기, 강조 또는 식별   |  빈 행 삭제   |  데이터 손실 없이 열 또는 셀 결합   |   수식 없이 반올림 ...
슈퍼 LOOKUP: 다중 조건 VLookup    다중 값 VLookup  |   다중 시트 조회   |   퍼지 매치 ....
고급 드롭다운 목록: 빠르게 드롭다운 목록 만들기   |  종속 드롭다운 목록   |  다중 선택 드롭다운 목록 ....
열 관리자: 특정 개수의 열 추가  |  열 이동  |  숨겨진 열의 가시성 상태 전환  |  범위 및 열 비교 ...
주요 기능: 그리드 포커스   |  디자인 보기   |   향상된 수식 표시줄    통합 문서 및 시트 관리자   |  자동 텍스트 라이브러리 (Auto Text)   |  날짜 선택기   |  데이터 병합   |  셀 암호화/해독    목록으로 이메일 보내기   |  슈퍼 필터   |   특수 필터 (굵은 글꼴/이탤릭체/취소선 필터링...) ...
최고의 15가지 도구 모음12개의 텍스트 도구 (텍스트 추가, 특정 문자 삭제, ...)   |   50+ 차트 유형 (간트 차트, ...)   |   40+ 실용적인 수식 (생일을 기반으로 나이 계산, ...)   |   19개 삽입 도구 (QR 코드 삽입, 경로에서 그림 삽입, ...)   |   12개 변환 도구 (단어로 변환하기, 통화 변환, ...)   |   7개 병합 및 분할 도구 (고급 행 병합, 셀 분할, ...)   |   ... 그리고 더 많은 기능들

Kutools for Excel로 엑셀 스킬을 강화하고 지금까지 경험하지 못한 효율성을 체험하세요. Kutools for Excel은 생산성을 향상시키고 시간을 절약할 수 있는 300개 이상의 고급 기능을 제공합니다.  가장 필요한 기능을 얻으려면 여기를 클릭하세요...


Office Tab은 탭 인터페이스를 Office에 제공하여 작업을 훨씬 쉽게 만듭니다.

  • Word, Excel, PowerPoint에서 탭 편집 및 읽기를 활성화하세요.
  • 새 창 대신 동일한 창의 새 탭에서 여러 문서를 열고 생성하세요.
  • 생산성을 50% 향상시키고 매일 수백 번의 마우스 클릭을 줄입니다!