Gmailの受信トレイ内のメールを自動削除するやり方

とても便利なGmailですが、いくつか欲しい機能があります。

「過去の特定のメールで、スターが付いていないものを削除する」処理を記述してみました。

手順1.特定のメールを抽出するフィルタを作成する。

手順2.Google Driveで「新規のスプレッドシート」を作成する。

手順3.「新規のスプレッドシート」から「ツール」→「スクリプトエディタ」を開く。

手順4.以下のようなスクリプトを記載する。

function myFunction() {
  // 31日以前に受信した「スターが付いていない」「CRON_From_RaspberryPi」というラベルを削除する
  var delayDays = 31;
  var deleteLabel = "CRON_From_RaspberryPi";
  var deleteThreads = GmailApp.search('older_than:'+delayDays+'d -is:starred label:'+ deleteLabel);

  for (var i = 0; i < deleteThreads.length; i++) {
    deleteThreads[i].moveToTrash();
  }

}

手順5.スクリプトの実行条件を設定する。(初回起動時には、権限に関する確認メッセージが表示されます)

a.実行するアカウントを選択

b.権限の確認

c.許可

参考)権限がない時に実行したエラー

詳細は以下の記事を参考しました。

参考にさせていただきました。ありがとうございます。

#はじめに毎日大量のメールが送られてくる...一度見たらもう見ないであろうメールが溜まる...手動でゴミ箱に移動させるのがとても面倒で、メールの中身すら開けたくない...気づいたら未読メー…

シェアする

  • このエントリーをはてなブックマークに追加

フォローする