ある特定の文字列のメールをプログラムを実行する1時間前から検索し、該当する場合はスプレッドシートに記載したいと思っています。
function getConfig() {
return {
spreadSheetId: 'xxxxxxxxxxxxx',// スプレッドシートの ID
spreadSheetTabName: 'xxxxxxxx',// スプレッドシートのタブ名
searchText: '打刻修正依頼'// Gmail の検索ワード
};
}
// 実行関数
function main() {
var config = getConfig();
var sheet = SpreadsheetApp.openById(config.spreadSheetId)
.getSheetByName(config.spreadSheetTabName);
var messages = [['Subject', 'From', 'To']];
GmailApp
.search(config.searchText, 0, 500)
.forEach(function (thread) {
thread.getMessages().forEach(function (message) {
var subject = message.getSubject();
var to = message.getTo();
var from = message.getFrom();
messages.push([subject, from, to]);
});
});
if (messages.length === 0) return;
sheet.getRange('A1:C' + messages.length ).setValues(messages);
}
上記の設定で特定の文字列のメールを過去全て抽出することはできたのですが、その日に来たメールのみを確認し、営業時間内の1時間ごとにトリガーを走らせ確認したいので、トリガー実行時の1時間前のみを抽出したいのですが、うまくいきません。
ご教授頂けたら幸いです。
宜しくお願いします。
回答2件
あなたの回答
tips
プレビュー