Computer >> 컴퓨터 >  >> 소프트웨어 >> Office

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

엑셀 워크시트에는 다양한 종류의 정보를 저장하게 됩니다. 예를 들어 중요한 인물이나 거래처의 이메일 주소를 관리할 수 있죠. 그리고 필요할 때마다 해당 주소로 메일을 발송해야 하는 경우도 생깁니다. 그런데 주소를 하나하나 복사해 붙여넣는 작업은 번거롭고 시간 낭비가 큽니다. 이 글에서는 엑셀 스프레드시트에 저장된 주소로 여러 이메일을 손쉽게 보낼 수 있는 효과적인 방법 두 가지를 소개합니다.


아래 예제 데이터는 영업사원(Salesman)과 그들의 이메일 주소를 담고 있습니다. 이 엑셀 스프레드시트의 주소를 활용해 모든 수신자에게 메일을 보내는 과정을 단계별로 살펴보겠습니다.


엑셀 스프레드시트에서 여러 이메일을 보내는 2가지 쉬운 방법


방법 1. Word의 메일 병합(Mail Merge) 기능 활용하기

첫 번째 방법은 MS Word메일 병합(Mail Merge) 기능을 사용하는 것입니다. Word와 Excel을 연동하면 한 번의 작업만으로 여러 명에게 개인화된 이메일을 보낼 수 있어 매우 편리합니다. 아래 단계를 따라 해보세요.

단계:

  • 먼저 빈 Word 문서를 열고 보낼 메시지 내용을 입력합니다.
  • 메일(Mailings)받는 사람 선택(Select Recipients)기존 목록 사용(Use an Existing List)을 클릭합니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 데이터 원본 선택(Select Data Source) 대화상자가 나타나면 이메일 주소가 저장된 Excel 파일을 선택하고 열기(Open)를 누릅니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 표 선택(Select Table) 대화상자에서 원하는 시트를 고른 뒤 확인(OK)을 누릅니다.
  • 수신자별로 바뀌어야 할 단어를 선택합니다. 이 예제에서는 이름인 Wilham입니다.
  • 메일(Mailings) 탭에서 병합 필드 삽입(Insert Merge Field) 드롭다운을 열고 Salesman을 선택합니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 그러면 아래와 같이 메시지에 병합 필드가 적용된 것을 확인할 수 있습니다.
  • 수신자 입장에서 미리보기를 확인하고 싶다면 결과 미리 보기(Preview Results)를 클릭하세요.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 마침 및 병합(Finish & Merge) 드롭다운에서 전자 메일 메시지 보내기(Send Email Messages)를 선택합니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 전자 메일로 병합(Merge to E-mail) 대화상자가 열리면 받는 사람(To) 필드에 Email 헤더를 지정하고 제목 줄(Greetings)을 입력합니다.
  • 마지막으로 확인(OK)을 누르면 모든 수신자에게 메일이 일괄 발송됩니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)


방법 2. Excel VBA로 여러 이메일 자동 발송하기

VBA 코드를 활용하면 반복 작업 없이 자동으로 처리할 수 있어 더욱 효율적입니다. 이번에는 엑셀 VBA스프레드시트에서 여러 이메일을 보내는 세 가지 예제를 소개합니다.


2.1 목록 전체에 동일한 내용의 대량 이메일 보내기

모든 수신자에게 같은 메시지를 일괄 발송하는 기본 예제입니다. 아래 단계를 따라 해보세요.

단계:

  • 개발 도구(Developer)Visual Basic을 클릭해 VBA 편집기를 엽니다.
  • 삽입(Insert)모듈(Module)을 선택합니다.
  • 아래 코드를 복사해 모듈 창에 붙여넣습니다.
Sub massEmails()
Dim appOutlook As Object
Dim Email As Object
Dim mailbody, mailto As String
Dim i, j As Integer
Set appOutlook = CreateObject("Outlook.Application")
Set Email = appOutlook.CreateItem(olMailItem)
For i = 2 To 5
    mailto = mailto & Cells(i, 2) & ";"
Next i
ThisWorkbook.Save
Email.To = mailto
Email.Subject = "Important Notice"
Email.Body = "Greetings Everyone," & vbNewLine & "Please go through the Company Rules." & vbNewLine & "Regards."
Email.Display
End Sub

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 파일을 저장한 뒤 F5 키를 눌러 코드를 실행합니다.
  • Outlook 창이 열리고 받는 사람 필드에 모든 수신자가 입력된 것을 확인할 수 있습니다.
  • 마지막으로 보내기(Send)를 누르면 완료됩니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)


2.2 여러 개의 첨부파일이 포함된 이메일 보내기

첨부할 파일이 여러 개이고 이를 여러 이메일 주소로 보내야 한다면 아래 방법을 사용하세요.

단계:

  • 개발 도구(Developer) 탭을 클릭하고 Visual Basic을 선택합니다.
  • VBA 창에서 삽입(Insert) 아래의 모듈(Module)을 선택합니다.
  • 모듈 창에 아래 코드를 복사해 붙여넣습니다. 코드 중 파일 경로 부분은 실제 저장 경로에 맞게 수정하세요.
Sub attachments()
Dim appOutlook As Object
Dim Email As Object
Dim source, mailto As String
Dim i, j As Integer
Set appOutlook = CreateObject("Outlook.Application")
Set Email = appOutlook.CreateItem(olMailItem)
For i = 2 To 5
    mailto = mailto & Cells(i, 2) & ";"
Next i
For j = 2 To 5
    source = "D:\SOFTEKO\how to send multiple emails from excel spreadsheet\" & Cells(j, 3)
    Email.Attachments.Add source
Next j
ThisWorkbook.Save
source = ThisWorkbook.FullName
Email.Attachments.Add source
Email.To = mailto
Email.Subject = "Important Sheets"
Email.Body = "Greetings Everyone," & vbNewLine & "Please go through the Sheets." & vbNewLine & "Regards."
Email.Display
End Sub

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 저장 후 F5 키로 코드를 실행합니다.
  • Outlook 창이 열리고 지정한 파일들이 정상적으로 첨부된 것을 확인할 수 있습니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)


2.3 셀 값 조건에 따라 자동으로 이메일 보내기

세 번째 예제는 특정 셀의 값이 설정한 기준과 다를 때 엑셀이 자동으로 여러 주소에 이메일을 보내도록 구성하는 방법입니다. 아래 데이터에서는 B5 셀의 값이 50이며, 코드는 이 값이 100 미만일 경우 이메일을 발송하도록 되어 있습니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

단계:

  • 먼저 해당 시트 탭을 마우스 오른쪽 버튼으로 클릭합니다.
  • 코드 보기(View Code)를 선택합니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 열린 창에 아래 코드를 복사해 붙여넣습니다.
Dim rn As Range
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error Resume Next
    If Target.Cells.Count > 1 Then Exit Sub
    Set rn = Intersect(Range("B5"), Target)
    If rn Is Nothing Then Exit Sub
    If IsNumeric(Target.Value) And Target.Value < 100 Then
        Call Mail_small_Text_Outlook
    End If
End Sub
Sub MailCellvalues()
Dim appOutlook As Object
Dim Email As Object
Dim mailbody, mailto As String
Dim i, j As Integer
Set appOutlook = CreateObject("Outlook.Application")
Set Email = appOutlook.CreateItem(olMailItem)
For i = 2 To 5
    mailto = mailto & Cells(i, 3) & ";"
Next i
ThisWorkbook.Save
Email.To = mailto
Email.Subject = "Important Notice"
Email.Body = "Greetings Everyone," & vbNewLine & "Please raise B5 above 100." & vbNewLine & "Regards."
Email.Display
End Sub

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)

  • 파일을 저장하고 F5 키를 눌러 실행합니다.
  • Outlook 창에서 발송 결과를 확인할 수 있습니다.

엑셀 스프레드시트에서 여러 이메일 한 번에 보내는 방법 (2가지 쉬운 방법)


마무리

지금까지 소개한 두 가지 방법을 활용하면 엑셀 스프레드시트에서 여러 이메일을 빠르고 간편하게 보낼 수 있습니다. 개인화된 메시지가 필요하다면 Word 메일 병합을, 자동화가 필요하다면 VBA 매크로를 활용해 보세요. 상황에 맞는 방법을 선택해 반복 업무 시간을 크게 줄일 수 있습니다.


함께 읽으면 좋은 글

  • 날짜 기준으로 엑셀에서 이메일 자동 발송하는 방법
  • 매크로로 엑셀에서 본문이 포함된 이메일 보내기
  • 엑셀 파일을 이메일로 자동 전송하는 3가지 방법
  • 조건 충족 시 엑셀에서 이메일 자동 발송하기
  • 셀 내용 기준으로 엑셀에서 이메일 자동 발송하는 2가지 방법