개별적으로 이름이 지정된 GoogleForms를 Gmail로 제출했습니다.
양식 준비
이런 식으로 이름을 입력하는 항목이 들어있는 양식을 준비
미리 입력한 URL 가져오기
'사전에 입력한 URL 가져오기'를 엽니다. 이번에는 이름을 미리 입력하고 만들고 싶기 때문에 이름에 "hoge"라고 입력한다.
(hoge 부분은 나중에 GAS로 대체하기 때문에 알기 쉽다면 뭐든지 좋지만, 일본어로 하면 나중에 인코딩 문제가 발생하여 대체하기 어려워지므로 피하는 것이 좋다)
가능하면 "링크 가져오기"를 누르고 왼쪽 하단에 나오는 "링크 복사"를 눌러 링크를 가져옵니다.
여기에서 취득한 링크는 이번 경우
https://docs.google.com/forms/d/e/1FAIpQLSevwd9U9rBYKNKnq_HeN-2irodHg9k4MUUm4fg9W3-tBiFE9A/viewform?usp=pp_url&entry.1570869996=hoge"
와 같이 되어 있습니다. 이름 부분에 hoge
를 입력한 부분이 마지막 entry.1570869996=hoge
에 대응하고 있는 것이군요. 이 부분을 바꾸어 원하는 값을 대입하면 잘 폼에 이름을 입력한 채로 보낼 수 있을 것 같습니다.GAS를 이용해 Gmail, 스프레드시트와 협력
양식이 준비되었으므로 이번에는 GAS를 작성할 것입니다.
이번에는 이런 느낌의 이름과 이메일 주소가 들어있는 Users라는 시트를 준비했습니다. 여기에서 개별적으로 Gmail로 보내고 싶습니다.
//コピーしたURLをforms_urlに代入
var forms_url = "https://docs.google.com/forms/d/e/1FAIpQLSevwd9U9rBYKNKnq_HeN-2irodHg9k4MUUm4fg9W3-tBiFE9A/viewform?usp=pp_url&entry.1570869996=hoge"
//ユーザー一覧のシートをここで設定
var Users_sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Users");
var Users_last_row = Users_sheet.getLastRow();
var Users_last_column = Users_sheet.getLastColumn();
var Users_list = Users_sheet.getRange(1,1,Users_last_row,Users_last_column).getValues();
////////////////////////
//
//メニュー追加
//
////////////////////////
function onOpen(){
var menu =[{name:'アンケート送信', functionName:'Send_Forms'}]
SpreadsheetApp.getActiveSpreadsheet().addMenu("アンケート送信",menu);
}
///////////////////////
//
//アンケート送信
//
///////////////////////
function Send_Forms(){
for(var i =1; i< Users_last_row; i++){
var users_name = Users_list[i][0]; //ユーザー名
var users_address = Users_list[i][1]; //メールアドレス
var replace_url = forms_url.replace("hoge",users_name); //ユーザー名をアンケートに埋めこむ部分
var body = replace_url //メール本文
var subject = "アンケート のご協力" //件名
GmailApp.sendEmail(users_address, subject, body) //Gmail送信
}
}
메뉴에 메일 송신의 항목을 만들어 두면 그 후 사용하기 쉽다고 생각
function onOpen()
를 준비했습니다. 유저명이나 주소는 자신이 준비한 시트에 맞추어 바꾸어 주세요.결과
스크립트를 실행한 결과 이런 느낌으로 무사히 보낼 수 있었습니다. URL을 열어보면
확실히 사전에 이름이 들어간 폼이 되어 있었습니다.
요약
메일 주소를 필수로 하면 유저 관리가 편해지지만, 유저에게 불필요한 입력의 부담이 걸리는 것이 싫었기 때문에, 사전에 이름 정도는 입력시키고 싶었기 때문에 만들었습니다. 이것으로 예를 들면 누구로부터 앙케이트의 결과가 돌아오지 않는 등 관리를 할 수 있습니다. 다만, 이름을 응답자가 재작성 버리는 것이 단점.
Reference
이 문제에 관하여(개별적으로 이름이 지정된 GoogleForms를 Gmail로 제출했습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mu_tomoya/items/ce65c4b686c072d98749텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)