Hike News
Hike News

GoogleSheet에서 Mail 보내기

Person:

  • Google sheet에서
  1. 5개의 리스트가 있다.
  2. 첫번째 셸은 이름, 두번째 셸은 email
  3. 5개 리스트로 이메일을 보내는 apps scripts를 만달어주세요

ChatGPT:

  • Google Sheets에서 스크립트를 사용하여 5개의 이메일을 보내려면 다음 단계를 따르세요.
  1. Google Sheets 파일을 열고 스크립트 편집기를 엽니다. 이것은 “확장 기능” 메뉴 아래에서 “Apps 스크립트”를 선택하여 열 수 있습니다.
  2. 스크립트 편집기에서 다음 코드를 작성하십시오. 이 코드는 Google Sheets의 이름 및 이메일 열에 있는 정보를 사용하여 이메일을 보내는 역할을 합니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = sheet.getDataRange().getValues();

for (var i = 1; i < data.length; i++) {
var name = data[i][0];
var email = data[i][1];
var subject = "안녕하세요, " + name + "님";
var message = "안녕하세요, " + name + "님, 이메일 내용을 여기에 작성하세요.";

MailApp.sendEmail(email, subject, message);
}
}
  1. 코드를 작성한 후, “저장”을 클릭하여 스크립트에 이름을 지정하고 저장하세요.
  2. 이제 스크립트를 실행하려면 “실행” 메뉴에서 “sendEmails” 함수를 선택하고 실행할 수 있습니다.
  3. 스크립트 실행 권한을 부여해야 할 수 있으므로 필요한 권한을 허용하세요.
  4. 스크립트는 이름 및 이메일 열에서 정보를 읽고 각각의 이메일을 보내게 됩니다.

이제 Google Sheets에서 스크립트를 사용하여 5개의 이메일을 보낼 수 있어야 합니다.

Person:

  • 위의 소스에서 버그가 있어 수정해주세요

ChatGPT:

  • 제공된 코드에서 수정이 필요한 부분은 for 루프의 시작 인덱스입니다. 인덱스를 1에서 0으로 변경하여 첫 번째 행을 포함하도록 수정해야 합니다. 또한 이메일을 보내기 전에 유효성 검사를 수행하여 이메일 주소가 유효한지 확인해야 합니다. 아래는 수정된 코드입니다:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function sendEmails() {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getActiveSheet();
var data = sheet.getDataRange().getValues();

for (var i = 0; i < data.length; i++) {
var name = data[i][0];
var email = data[i][1];
var subject = "안녕하세요, " + name + "님";
var message = "안녕하세요, " + name + "님, 이메일 내용을 여기에 작성하세요.";

// 이메일 유효성 검사를 수행
if (isValidEmail(email)) {
MailApp.sendEmail(email, subject, message);
}
}
}

// 이메일 주소의 유효성을 검사하는 함수
function isValidEmail(email) {
var emailPattern = /^[a-zA-Z0-9._-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,4}$/;
return emailPattern.test(email);
}

이제 코드는 0부터 시작하여 첫 번째 행을 포함하며, 이메일 주소의 유효성을 검사한 후에만 이메일을 보내게 됩니다.