SYSTEM DEVELOPMENT

STUDY GROUP

スプレットシートってすごい(すごい)

こんばんわSIです!
前回記事にした自動でメール送るスプレットシート完成したので軽くご報告。。。。
それぞれのcell1を軽く紹介していきますね
B列:メールアドレスを記入する場所
E2:メールのタイトル(件名)を入力します。
E4:本文を入力します。
K列:日にちを入れます。
L列:文字列を入力します。
M列:置換対象を入力します

大雑把なフローチャートがこちら⇩
一番最初のトリガーを確認の所は想像です。。。
詳しく調べてないのでなんとも言えませんが

練習がてらに作ったので無駄に配列操作入れちゃいましたが正直必要ないです。。。。
 
以下がソースコードです
———————————————————————————–
function testmale() {
var sheet = SpreadsheetApp.getActiveSheet();
var subject = sheet.getRange(2, 5).getValue();
var main = sheet.getRange(4, 5).getValue();
var mailaddress =””;
var range = sheet.getRange(“K:K”).getValues();
//入力がある最終行を取得
var lastRow = range.filter(String).length;
range = “”;
var Array=[];
var date = new Date();
var day = date.getDate();
var hiduke = date.getMonth() + 1;
subject =”【” + hiduke + “/” + day + “】” + subject;
for(var i=0; i<=lastRow-1; i++){
Array[i] = []
for(var j=0; j<=2; j++){
Array[i][j] = sheet.getRange(i+2,j+11).getValue();
}
}
/*
日付を取得しキーと比較
該当を置換する処理をこのあと書く
*/
for(var i=0; i<=lastRow-1; i++){
if (day==Array[i][0]){
//リプレース開始//
main = main.replace(Array[i][2],Array[i][1]);
}
}
/*
日付を取得しキーと比較
該当を置換する処理をこのあと書く
*/
var range = sheet.getRange(“B:B”).getValues();
//入力がある最終行を取得
var lastRow = range.filter(String).length;
for (i=1; i<=lastRow; i++) {
mailaddress = mailaddress + “,” + sheet.getRange(i+1, 2).getValue();
}
mailaddress = mailaddress.slice(1,-1);
GmailApp.sendEmail(mailaddress,subject,main);
}
———————————————————————————–
誰が使っても同じ結果が得られることが目標なのでこれからも微修正していこうかと思います
では。。。おやすみなさい

menu