🍔

【ずぼら流】Google Apps Script(GAS)で昨日来た未読メールは全て既読にするコードを公開します!

2021/12/19に公開

概要

私の職場では、他部署のメールもたくさん来がちです。ずぼらな私は重要なもの以外を既読にしない習性があるのですが、前日までのメールが既読の方が今日確認するところが限られて作業効率が上がりそうなので、昨日来たメールを既読にする自動化を思いつきました。

GASのプロジェクトを作成までの操作や、トリガーの設定方法は記載していません。
下記のコードをプロジェクトに貼り付ければ動きます。

コード

// 1日1回実行するようなトリガーを設定して利用する。
// 既読にする最大のメール数を数値で指定。
const MAX_UNREAD_MAILS = 100;
// 昨日までのメールを既読にする。
function markRead() {
  // 既読にしていない、昨日以前のメールをMAX_UNREAD_MAILS個以下で取得
  let threads = GmailApp.search('is:unread older_than:1d', 0, MAX_UNREAD_MAILS);
  for (let i = 0; i < threads.length; i++) {
    Logger.log(threads[i].getFirstMessageSubject())
    threads[i].markRead();
  }
}

応用するなら

下記は今回取り上げたコードを利用した応用として考えられそうです。

  • 退勤後にメールが来た場合を考えて、昨日ではなく、何時間前を指定するなどの処理を追加する。

参考

search用のクエリを作成する際に参考にさせていただきました。

Discussion