앱스 스크립트 사용법 (8) 여러 명에게 메일 보내기

이번에는 앱스 스크립트 사용법 (1) 메일 보내기 를 확장해서 여러 명에게 메일 보내는 방법을 알아보겠습니다.

방법은 아주 간단합니다.
메일을 여러 사람에게 보낼 때 to에 여러 개의 메일 주소를 쓰는 것과 동일합니다.

메일 주소를 넣어야 하는 곳에 여러 개의 메일 주소를 콤마(,)로 구분하여 넣어주시면 됩니다.

메일 보내기 스크립트 코드 중 메일 주소 설정 부분:

 var my_email = "<메일주소>@gmail.com"; // 본인 메일주소를 넣어주세요.

▼여러개의 메일을 보낼 때의 코드

 var my_email = "<메일주소 1>, <메일주소 2>, <메일주소 3>";

끝입니다. 참 쉽죠?

 

하지만. 여기서 끝나면 조금 아쉬우니, 메일 주소를 시트에서 가져오는 기능을 추가해보겠습니다.

개요

  1. 환율 정보를 수집하는 [환율]시트와 이메일 리스트를 관리할 [email list]시트 두개를 준비한다.
  2. [환율]시트에서 수집한 환율 정보를 가져온다.
  3. [email list]시트에 적어놓은 이메일 주소 여러 개를 가져와서 메일 보내기.

시트 준비하기

코드 작성하기 전에, 기존에 환율 정보를 수집하던 시트의 이름은 [환율]로 설정했습니다.
그리고 이메일 주소를 가져올 새로운 시트를 추가합니다. 새로운 시트 이름은 [email list]으로 설정했습니다. 참고로, 이메일만 입력할 시트이므로 A열만 남겼습니다.

send_emails01

그리고 A열에 이메일을 여러 개 적었습니다.

send_emails02

스크립트 편집기 열기

도구 > 스크립트 편집기 메뉴를 클릭합니다.

send_emails03

스크립트 편집 화면에 아래 코드를 넣습니다.

send_emails04

코드

function myFunction() {

  var ss = SpreadsheetApp.getActiveSpreadsheet();

  // [환율]시트에서 환율 정보 가져오기.
  var exrate_sheet = ss.getSheetByName('환율');

 // 오늘 날짜
 var date_today = new Date();
 // 달러 환율
 var exchange_rate_usd = exrate_sheet.getRange(6, 2).getValues(); 
 // 엔화 환율
 var exchange_rate_jpy = exrate_sheet.getRange(11, 2).getValues();

 // [email list]시트의 A열에서 이메일 주소 가져오기.
 var mailsheet = ss.getSheetByName('email list');

 var rangeA = mailsheet.getRange('A:A');
 var mailvalues = rangeA.getValues(); // get all data in one call

 var cnt = 0;
 var mail_list = Array();
 for (var row in mailvalues) {
  for (var col in mailvalues[row]) { 
   if(mailvalues[row][col] != ""){
   mail_list[cnt] = mailvalues[row][col];
   cnt++; 
   }
  }
 }

 // 여러개의 이메일을 , 로 묶기
 var recipient = mail_list.join(',');

 // 알람 메일 준비
 var email_subject = "환율 알림";
 var htmlbody = "시간: " 
  + Utilities.formatDate(date_today, Session.getScriptTimeZone(), "yyyy-MM-dd HH:mm") 
  + "
 달러 환율: " + exchange_rate_usd
  + "
 엔화 환율: " + exchange_rate_jpy;

 // 메일 보내기
 MailApp.sendEmail({
  to: recipient,
  subject: email_subject,
  htmlBody: htmlbody, 
 });
}

스크립트 실행

▶(실행)버튼을 클릭합니다.

send_emails05

필요할 경우 스크립트 권한을 설정해주시기 바랍니다.
(스크린샷은 생략합니다. 자세한 내용은 앱스 스크립트 사용법 (1) 메일 보내기 > 실행 권한 허용 을 확인해주세요.)

스크립트를 실행하면, 메일이 송신됩니다.

송신된 메일 주소의 받는 사람에 [email list] 시트에 적은 여러 개의 이메일이 있는 것을 확인할 수 있습니다.

send_emails09

 

구글 앱스 스크립트의 다른 활용법을 알고싶으시다면!
» G Suite 사용법 #5 앱스 스크립트 활용 예시 모음

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Google photo

Google의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 /  변경 )

%s에 연결하는 중