Created
August 11, 2017 10:05
-
-
Save egoing/20de97ee243e163272cde3db7e09bda8 to your computer and use it in GitHub Desktop.
구글 스프래드쉬트를 활용한 추첨
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function shuffle(a) { | |
var j, x, i; | |
for (i = a.length; i; i--) { | |
j = Math.floor(Math.random() * i); | |
x = a[i - 1]; | |
a[i - 1] = a[j]; | |
a[j] = x; | |
} | |
} | |
function draw(){ | |
// 당첨 여부를 표시하는 셀 | |
const MARKCELL = 'G'; | |
// 당첨자의 수 | |
const SELECT_NUL = 1 | |
// 컨텐츠가 시작되는 행의 수 | |
const CONTENT_START_ROW = 2; | |
const CONTENT_RANGE = 'A2:F4'; | |
var sheet = SpreadsheetApp.getActiveSheet(); | |
var dataRange = sheet.getRange(CONTENT_RANGE); | |
var data = dataRange.getValues(); | |
var dataArray = []; | |
for (var i in data) { | |
var row = data[i]; | |
row.unshift(i); | |
dataArray.push(row); | |
} | |
shuffle(dataArray); | |
dataArray.splice(SELECT_NUL); | |
// 그 중에 가장 앞에 있는 80명을 뽑아라. | |
for(person in dataArray){ | |
var email = dataArray[person][4]; | |
var name = dataArray[person][3]; | |
var id = dataArray[person][0]; | |
Logger.log(email+','+name+','+id); | |
// 그리고 그들에게 이메일을 보내라. | |
//MailApp.sendEmail(email, "당첨 되었습니다. 축하해요.", name+"님 안녕하세요. 축하드려요. ^^"); | |
// 당첨된 사람이 누군인지 표에 표시해라. | |
SpreadsheetApp.getActiveSheet().getRange(MARKCELL+(CONTENT_START_ROW+Number(id))).setValue('당첨'); | |
//Logger.log('H'+(1+Number(id))); | |
} | |
} | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment