1

gmail には、x と y という名前の 2 つのユーザー定義ラベルがあります。その特定のラベルに存在するメッセージを取得する必要がありますが、すべてのラベルからデータを取得しています。

メッセージの本文、ラベル、受信日が必要で、スプレッドシートで更新します

以下は私のコードです:


  var ulables = GmailApp.getUserLabels();
  for(var x=0; x < ulables.length; x++){ 
    var threads = GmailApp.getUserLabelByName(ulables[x].getName()).getThreads();

    for (var i = 0; i < threads.length; i++) {    
      var messages = threads[i].getMessages();      
      var label = ulables[x].getName();     
      for (var m = 0; m < messages.length; m++) {        
        var msg     = messages[m].getBody();
        var cmsg    = convertHtmlToText(msg);

        var subject = messages[m].getSubject();
        if(subject == reqSub){
          var recDate = Utilities.formatDate(messages[m].getDate(),"GMT","MM/dd/yyyy");
          if(isDateInRange(recDate, startDate, endDate)){

            var arr =[recDate,label,cmsg];
            mailSheet.getRange(++lastRow, 1,1,3).setValues([arr]).activate();
          }
        }
      }
    }
  }  

例:- ラベル x には 10 通のメールがあります ラベル y には 10 通のメールがあります 受信トレイには 50 通のメールがあります

ラベルごとに、問題である 60 通の電子メールを受信して​​いますが、10、10、50 通の電子メールが予想されます。

過去 2 日間から苦労しましたが、成功しませんでした。私を助けてください。事前に感謝します。


詳細を教えてください、先週から待っていました。スレッドを使わずにメッセージを取得する方法はありますか?

4

0 に答える 0