דילוג לתוכן
  • חוקי הפורום
  • פופולרי
  • לא נפתר
  • משתמשים
  • חיפוש גוגל בפורום
  • צור קשר
עיצובים
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • ברירת מחדל (ללא עיצוב (ברירת מחדל))
  • ללא עיצוב (ברירת מחדל)
כיווץ
מתמחים טופ
  1. דף הבית
  2. מחשבים וטכנולוגיה
  3. עזרה הדדית - מחשבים וטכנולוגיה
  4. בירור | איך להוציא קובץ עם כל מי ששלח אלי / קיבל ממני מייל

בירור | איך להוציא קובץ עם כל מי ששלח אלי / קיבל ממני מייל

מתוזמן נעוץ נעול הועבר עזרה הדדית - מחשבים וטכנולוגיה
15 פוסטים 5 כותבים 336 צפיות 6 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • ש שמעון חבצלת

    היי שלום
    פרסמתי על כך שמי שרוצה להכנס לרשימת התפוצה שלי יכול לשלוח לי מייל
    מאות פנו אלי ואין לי כח עכשיו להעתיק מייל מייל
    האם אני יכול לייצא את כל המילים שכתבו לי או שכתבתי להם מייל אי פעם?

    אבייא מנותק
    אבייא מנותק
    אביי
    כתב ב נערך לאחרונה על ידי אביי
    #3

    @שמעון-חבצלת מצורף הקוד, צור קובץ גוגל שיטס חדש, תשנה את שם הגיליון ל"כתובות", לאחמ"כ תפתח בתפריט העליון את תוספים > apps script תמחק את הקוד הראשוני ותדביק את הקוד הזה ותפעיל.

    זה יעבוד רק לשרשורים בדואר הנכנס.

    function exportEmails() {
      let sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
      sheet.clear();
    
      sheet.appendRow(["כתובת אימייל", "שם השולח", "נושא", "תוויות", "תאריך שליחה", "איידי ההודעה"]);
    
      let maxThreads = 500;
      let start = 0;
    
      while (true) {
        let threads = GmailApp.getInboxThreads(start, maxThreads);
    
        if (threads.length == 0) {
          break;
        }
    
        for (let i = 0; i < threads.length; i++) {
          let messages = threads[i].getMessages();
    
          for (let j = 0; j < messages.length; j++) {
            let email = messages[j];
    
            let fromField = email.getFrom();
            let matches = fromField.match(/"?(.*?)"?\s*<(.+?)>/);
            let name = matches && matches[1] ? matches[1] : '';
            let emailAddress = matches && matches[2] ? matches[2] : fromField;
            let subject = email.getSubject();
    
            let threadLabels = threads[i].getLabels();
            let labelNames = [];
            
            for (let k = 0; k < threadLabels.length; k++) {
              labelNames.push(threadLabels[k].getName());
            }
            
            let labels = labelNames.join(', ');
    
            let date = email.getDate();
            let id = email.getId();
            let formattedDate = Utilities.formatDate(date, 'GMT', 'yyyy-MM-dd HH:mm:ss');
    
            sheet.appendRow([emailAddress, name, subject, labels, formattedDate, id]);
          }
        }
    
        start += maxThreads;
      }
    }
    

    ניתן ליצור עימי קשר 8140hp+mt@gmail.com

    ש 2 תגובות תגובה אחרונה
    6
    • אבייא אביי

      @שמעון-חבצלת מצורף הקוד, צור קובץ גוגל שיטס חדש, תשנה את שם הגיליון ל"כתובות", לאחמ"כ תפתח בתפריט העליון את תוספים > apps script תמחק את הקוד הראשוני ותדביק את הקוד הזה ותפעיל.

      זה יעבוד רק לשרשורים בדואר הנכנס.

      function exportEmails() {
        let sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
        sheet.clear();
      
        sheet.appendRow(["כתובת אימייל", "שם השולח", "נושא", "תוויות", "תאריך שליחה", "איידי ההודעה"]);
      
        let maxThreads = 500;
        let start = 0;
      
        while (true) {
          let threads = GmailApp.getInboxThreads(start, maxThreads);
      
          if (threads.length == 0) {
            break;
          }
      
          for (let i = 0; i < threads.length; i++) {
            let messages = threads[i].getMessages();
      
            for (let j = 0; j < messages.length; j++) {
              let email = messages[j];
      
              let fromField = email.getFrom();
              let matches = fromField.match(/"?(.*?)"?\s*<(.+?)>/);
              let name = matches && matches[1] ? matches[1] : '';
              let emailAddress = matches && matches[2] ? matches[2] : fromField;
              let subject = email.getSubject();
      
              let threadLabels = threads[i].getLabels();
              let labelNames = [];
              
              for (let k = 0; k < threadLabels.length; k++) {
                labelNames.push(threadLabels[k].getName());
              }
              
              let labels = labelNames.join(', ');
      
              let date = email.getDate();
              let id = email.getId();
              let formattedDate = Utilities.formatDate(date, 'GMT', 'yyyy-MM-dd HH:mm:ss');
      
              sheet.appendRow([emailAddress, name, subject, labels, formattedDate, id]);
            }
          }
      
          start += maxThreads;
        }
      }
      
      ש מנותק
      ש מנותק
      שמעון חבצלת
      כתב ב נערך לאחרונה על ידי
      #4

      @אביי אלוףףףףף!!
      זה גם למי ששלחתי וגם למי ששלח אלי?

      תגובה 1 תגובה אחרונה
      0
      • אבייא אביי

        @שמעון-חבצלת מצורף הקוד, צור קובץ גוגל שיטס חדש, תשנה את שם הגיליון ל"כתובות", לאחמ"כ תפתח בתפריט העליון את תוספים > apps script תמחק את הקוד הראשוני ותדביק את הקוד הזה ותפעיל.

        זה יעבוד רק לשרשורים בדואר הנכנס.

        function exportEmails() {
          let sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
          sheet.clear();
        
          sheet.appendRow(["כתובת אימייל", "שם השולח", "נושא", "תוויות", "תאריך שליחה", "איידי ההודעה"]);
        
          let maxThreads = 500;
          let start = 0;
        
          while (true) {
            let threads = GmailApp.getInboxThreads(start, maxThreads);
        
            if (threads.length == 0) {
              break;
            }
        
            for (let i = 0; i < threads.length; i++) {
              let messages = threads[i].getMessages();
        
              for (let j = 0; j < messages.length; j++) {
                let email = messages[j];
        
                let fromField = email.getFrom();
                let matches = fromField.match(/"?(.*?)"?\s*<(.+?)>/);
                let name = matches && matches[1] ? matches[1] : '';
                let emailAddress = matches && matches[2] ? matches[2] : fromField;
                let subject = email.getSubject();
        
                let threadLabels = threads[i].getLabels();
                let labelNames = [];
                
                for (let k = 0; k < threadLabels.length; k++) {
                  labelNames.push(threadLabels[k].getName());
                }
                
                let labels = labelNames.join(', ');
        
                let date = email.getDate();
                let id = email.getId();
                let formattedDate = Utilities.formatDate(date, 'GMT', 'yyyy-MM-dd HH:mm:ss');
        
                sheet.appendRow([emailAddress, name, subject, labels, formattedDate, id]);
              }
            }
        
            start += maxThreads;
          }
        }
        
        ש מנותק
        ש מנותק
        שמעון חבצלת
        כתב ב נערך לאחרונה על ידי
        #5

        @אביי זה עושה לי שגיאה כזו
        f6e4b707-6b49-4202-8432-a6a82c05d0be-image.png
        זה לאחר שעשיתי הפעלה..

        אבייא תגובה 1 תגובה אחרונה
        0
        • ש שמעון חבצלת

          @אביי זה עושה לי שגיאה כזו
          f6e4b707-6b49-4202-8432-a6a82c05d0be-image.png
          זה לאחר שעשיתי הפעלה..

          אבייא מנותק
          אבייא מנותק
          אביי
          כתב ב נערך לאחרונה על ידי
          #6

          @שמעון-חבצלת אתה בטוח שיש לך גיליון בשם "כתובות" בגוגל שיטס?

          עכ"פ עדכנתי את הקוד למעלה וכעת זה יעבוד ללא קשר לשם הגיליון, וכן יעבוד על יותר מ500 ההודעות האחרונות.

          ניתן ליצור עימי קשר 8140hp+mt@gmail.com

          תגובה 1 תגובה אחרונה
          3
          • א מנותק
            א מנותק
            א.ב.ק.
            כתב ב נערך לאחרונה על ידי
            #7

            איך אפשר לשנות את זה שזה יתן לי רשימה מדואר יוצא??

            אבייא 2 תגובות תגובה אחרונה
            0
            • א א.ב.ק.

              איך אפשר לשנות את זה שזה יתן לי רשימה מדואר יוצא??

              אבייא מנותק
              אבייא מנותק
              אביי
              כתב ב נערך לאחרונה על ידי
              #8

              @א-ב-ק כתב בבירור | איך להוציא קובץ עם כל מי ששלח אלי / קיבל ממני מייל:

              איך אפשר לשנות את זה שזה יתן לי רשימה מדואר יוצא??

              בעיקרון תשנה בשורה 11 ל

              let threads = GmailApp.search("in:sent", start, maxThreads); 
              

              ניתן ליצור עימי קשר 8140hp+mt@gmail.com

              תגובה 1 תגובה אחרונה
              1
              • א א.ב.ק.

                איך אפשר לשנות את זה שזה יתן לי רשימה מדואר יוצא??

                אבייא מנותק
                אבייא מנותק
                אביי
                כתב ב נערך לאחרונה על ידי
                #9

                מצורף קוד מעודכן שאמור להציג גם שיפור בביצועים (כי הרישום לאקסל נעשה רק כל 100 הודעות),

                לשינוי לדואר יוצא, יש למחוק את ה"//" בשורה 13 ולרשום אותם בתחילת שורה 12 ולהיפך.

                function exportEmails() {
                  let sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
                  sheet.clear();
                
                  sheet.appendRow(["כתובת שולח", "שם השולח", "כתובת נמען", "שם הנמען", "נושא", "תוויות", "תאריך שליחה", "איידי ההודעה"]);
                
                  let maxThreads = 500;
                  let start = 0;
                  let dataRows = [];
                
                  while (true) {
                    let threads = GmailApp.getInboxThreads(start, maxThreads);
                    //let threads = GmailApp.search("in:sent", start, maxThreads); 
                
                    if (threads.length == 0) {
                      break;
                    }
                
                    for (let i = 0; i < threads.length; i++) {
                      let messages = threads[i].getMessages();
                
                      for (let j = 0; j < messages.length; j++) {
                        let email = messages[j];
                
                        let fromField = email.getFrom();
                        let matches = fromField.match(/"?(.*?)"?\s*<(.+?)>/);
                        let name = matches && matches[1] ? matches[1] : '';
                        let emailAddress = matches && matches[2] ? matches[2] : fromField;
                
                        let toField = email.getTo();
                        let matchesTo = toField.match(/"?(.*?)"?\s*<(.+?)>/);
                        let nameTo = matchesTo && matchesTo[1] ? matchesTo[1] : '';
                        let emailAddressTo = matchesTo && matchesTo[2] ? matchesTo[2] : toField;
                        let subject = email.getSubject();
                
                        let threadLabels = threads[i].getLabels();
                        let labelNames = [];
                        
                        for (let k = 0; k < threadLabels.length; k++) {
                          labelNames.push(threadLabels[k].getName());
                        }
                        
                        let labels = labelNames.join(', ');
                
                        let date = email.getDate();
                        let id = email.getId();
                        let formattedDate = Utilities.formatDate(date, 'GMT', 'yyyy-MM-dd HH:mm:ss');
                
                        dataRows.push([emailAddress, name, emailAddressTo, nameTo, subject, labels, formattedDate, id]);
                
                        if (dataRows.length >= 100) {
                          sheet.getRange(sheet.getLastRow() + 1, 1, dataRows.length, 8).setValues(dataRows);
                          dataRows = [];
                        }
                      }
                    }
                
                    start += maxThreads;
                  }
                
                  if (dataRows.length > 0) {
                    sheet.getRange(sheet.getLastRow() + 1, 1, dataRows.length, 8).setValues(dataRows);
                  }
                }
                
                

                ניתן ליצור עימי קשר 8140hp+mt@gmail.com

                ש ש 2 תגובות תגובה אחרונה
                6
                • אבייא אביי

                  מצורף קוד מעודכן שאמור להציג גם שיפור בביצועים (כי הרישום לאקסל נעשה רק כל 100 הודעות),

                  לשינוי לדואר יוצא, יש למחוק את ה"//" בשורה 13 ולרשום אותם בתחילת שורה 12 ולהיפך.

                  function exportEmails() {
                    let sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
                    sheet.clear();
                  
                    sheet.appendRow(["כתובת שולח", "שם השולח", "כתובת נמען", "שם הנמען", "נושא", "תוויות", "תאריך שליחה", "איידי ההודעה"]);
                  
                    let maxThreads = 500;
                    let start = 0;
                    let dataRows = [];
                  
                    while (true) {
                      let threads = GmailApp.getInboxThreads(start, maxThreads);
                      //let threads = GmailApp.search("in:sent", start, maxThreads); 
                  
                      if (threads.length == 0) {
                        break;
                      }
                  
                      for (let i = 0; i < threads.length; i++) {
                        let messages = threads[i].getMessages();
                  
                        for (let j = 0; j < messages.length; j++) {
                          let email = messages[j];
                  
                          let fromField = email.getFrom();
                          let matches = fromField.match(/"?(.*?)"?\s*<(.+?)>/);
                          let name = matches && matches[1] ? matches[1] : '';
                          let emailAddress = matches && matches[2] ? matches[2] : fromField;
                  
                          let toField = email.getTo();
                          let matchesTo = toField.match(/"?(.*?)"?\s*<(.+?)>/);
                          let nameTo = matchesTo && matchesTo[1] ? matchesTo[1] : '';
                          let emailAddressTo = matchesTo && matchesTo[2] ? matchesTo[2] : toField;
                          let subject = email.getSubject();
                  
                          let threadLabels = threads[i].getLabels();
                          let labelNames = [];
                          
                          for (let k = 0; k < threadLabels.length; k++) {
                            labelNames.push(threadLabels[k].getName());
                          }
                          
                          let labels = labelNames.join(', ');
                  
                          let date = email.getDate();
                          let id = email.getId();
                          let formattedDate = Utilities.formatDate(date, 'GMT', 'yyyy-MM-dd HH:mm:ss');
                  
                          dataRows.push([emailAddress, name, emailAddressTo, nameTo, subject, labels, formattedDate, id]);
                  
                          if (dataRows.length >= 100) {
                            sheet.getRange(sheet.getLastRow() + 1, 1, dataRows.length, 8).setValues(dataRows);
                            dataRows = [];
                          }
                        }
                      }
                  
                      start += maxThreads;
                    }
                  
                    if (dataRows.length > 0) {
                      sheet.getRange(sheet.getLastRow() + 1, 1, dataRows.length, 8).setValues(dataRows);
                    }
                  }
                  
                  
                  ש מנותק
                  ש מנותק
                  שעטנ"ז ג"ץ
                  כתב ב נערך לאחרונה על ידי
                  #10

                  @אביי כתב בבירור | איך להוציא קובץ עם כל מי ששלח אלי / קיבל ממני מייל:

                  getSheets

                  ניסתי גם אני עם הקוד הזה וזה התוצאה

                  3b4ff738-8040-47c1-9f57-bb0141b7c7ce-image.png

                  אבייא תגובה 1 תגובה אחרונה
                  0
                  • ש שעטנ"ז ג"ץ

                    @אביי כתב בבירור | איך להוציא קובץ עם כל מי ששלח אלי / קיבל ממני מייל:

                    getSheets

                    ניסתי גם אני עם הקוד הזה וזה התוצאה

                    3b4ff738-8040-47c1-9f57-bb0141b7c7ce-image.png

                    אבייא מנותק
                    אבייא מנותק
                    אביי
                    כתב ב נערך לאחרונה על ידי
                    #11

                    @שעטנ-ז-ג-ץ זה צריך להיות סקריפט מואגד לקובץ גוגל שיטס

                    צור קובץ גוגל שיטס חדש, תשנה את שם הגיליון ל"כתובות", לאחמ"כ תפתח בתפריט העליון את תוספים > apps script תמחק את הקוד הראשוני ותדביק את הקוד הזה ותפעיל.

                    ניתן ליצור עימי קשר 8140hp+mt@gmail.com

                    ש תגובה 1 תגובה אחרונה
                    0
                    • אבייא אביי

                      @שעטנ-ז-ג-ץ זה צריך להיות סקריפט מואגד לקובץ גוגל שיטס

                      צור קובץ גוגל שיטס חדש, תשנה את שם הגיליון ל"כתובות", לאחמ"כ תפתח בתפריט העליון את תוספים > apps script תמחק את הקוד הראשוני ותדביק את הקוד הזה ותפעיל.

                      ש מנותק
                      ש מנותק
                      שעטנ"ז ג"ץ
                      כתב ב נערך לאחרונה על ידי
                      #12

                      @אביי כתב בבירור | איך להוציא קובץ עם כל מי ששלח אלי / קיבל ממני מייל:

                      @שעטנ-ז-ג-ץ זה צריך להיות סקריפט מואגד לקובץ גוגל שיטס

                      צור קובץ גוגל שיטס חדש, תשנה את שם הגיליון ל"כתובות", לאחמ"כ תפתח בתפריט העליון את תוספים > apps script תמחק את הקוד הראשוני ותדביק את הקוד הזה ותפעיל.

                      גם זה עשיתי ואותו שגיאה

                      אבייא תגובה 1 תגובה אחרונה
                      0
                      • ש שעטנ"ז ג"ץ

                        @אביי כתב בבירור | איך להוציא קובץ עם כל מי ששלח אלי / קיבל ממני מייל:

                        @שעטנ-ז-ג-ץ זה צריך להיות סקריפט מואגד לקובץ גוגל שיטס

                        צור קובץ גוגל שיטס חדש, תשנה את שם הגיליון ל"כתובות", לאחמ"כ תפתח בתפריט העליון את תוספים > apps script תמחק את הקוד הראשוני ותדביק את הקוד הזה ותפעיל.

                        גם זה עשיתי ואותו שגיאה

                        אבייא מנותק
                        אבייא מנותק
                        אביי
                        כתב ב נערך לאחרונה על ידי
                        #13

                        @שעטנ-ז-ג-ץ רוצה להביא לינק למה שעשית? כי אצלי זה עובד מעולה, וכעת יצרתי קובץ חדש בדיוק לפי ההוראות שהבאתי לעיל וזה עובד אצלי מצויין.

                        ניתן ליצור עימי קשר 8140hp+mt@gmail.com

                        תגובה 1 תגובה אחרונה
                        1
                        • אבייא אביי

                          מצורף קוד מעודכן שאמור להציג גם שיפור בביצועים (כי הרישום לאקסל נעשה רק כל 100 הודעות),

                          לשינוי לדואר יוצא, יש למחוק את ה"//" בשורה 13 ולרשום אותם בתחילת שורה 12 ולהיפך.

                          function exportEmails() {
                            let sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
                            sheet.clear();
                          
                            sheet.appendRow(["כתובת שולח", "שם השולח", "כתובת נמען", "שם הנמען", "נושא", "תוויות", "תאריך שליחה", "איידי ההודעה"]);
                          
                            let maxThreads = 500;
                            let start = 0;
                            let dataRows = [];
                          
                            while (true) {
                              let threads = GmailApp.getInboxThreads(start, maxThreads);
                              //let threads = GmailApp.search("in:sent", start, maxThreads); 
                          
                              if (threads.length == 0) {
                                break;
                              }
                          
                              for (let i = 0; i < threads.length; i++) {
                                let messages = threads[i].getMessages();
                          
                                for (let j = 0; j < messages.length; j++) {
                                  let email = messages[j];
                          
                                  let fromField = email.getFrom();
                                  let matches = fromField.match(/"?(.*?)"?\s*<(.+?)>/);
                                  let name = matches && matches[1] ? matches[1] : '';
                                  let emailAddress = matches && matches[2] ? matches[2] : fromField;
                          
                                  let toField = email.getTo();
                                  let matchesTo = toField.match(/"?(.*?)"?\s*<(.+?)>/);
                                  let nameTo = matchesTo && matchesTo[1] ? matchesTo[1] : '';
                                  let emailAddressTo = matchesTo && matchesTo[2] ? matchesTo[2] : toField;
                                  let subject = email.getSubject();
                          
                                  let threadLabels = threads[i].getLabels();
                                  let labelNames = [];
                                  
                                  for (let k = 0; k < threadLabels.length; k++) {
                                    labelNames.push(threadLabels[k].getName());
                                  }
                                  
                                  let labels = labelNames.join(', ');
                          
                                  let date = email.getDate();
                                  let id = email.getId();
                                  let formattedDate = Utilities.formatDate(date, 'GMT', 'yyyy-MM-dd HH:mm:ss');
                          
                                  dataRows.push([emailAddress, name, emailAddressTo, nameTo, subject, labels, formattedDate, id]);
                          
                                  if (dataRows.length >= 100) {
                                    sheet.getRange(sheet.getLastRow() + 1, 1, dataRows.length, 8).setValues(dataRows);
                                    dataRows = [];
                                  }
                                }
                              }
                          
                              start += maxThreads;
                            }
                          
                            if (dataRows.length > 0) {
                              sheet.getRange(sheet.getLastRow() + 1, 1, dataRows.length, 8).setValues(dataRows);
                            }
                          }
                          
                          
                          ש מנותק
                          ש מנותק
                          שמעון חבצלת
                          כתב ב נערך לאחרונה על ידי שמעון חבצלת
                          #14

                          @אביי אלוףףף ממש תודה רבה!! עכשיו זה עבד לי!

                          ש תגובה 1 תגובה אחרונה
                          0
                          • ש שמעון חבצלת

                            @אביי אלוףףף ממש תודה רבה!! עכשיו זה עבד לי!

                            ש מנותק
                            ש מנותק
                            שעון חול 0
                            כתב ב נערך לאחרונה על ידי
                            #15

                            @שמעון-חבצלת אם אפשר קצת הסבר מה זה עושה (אם מישהו שלח לי מייל 5 פעמים הוא יקבל את זה 5 פעמים?)

                            תגובה 1 תגובה אחרונה
                            0

                            • התחברות

                            • אין לך חשבון עדיין? הרשמה

                            • התחברו או הירשמו כדי לחפש.
                            • פוסט ראשון
                              פוסט אחרון
                            0
                            • חוקי הפורום
                            • פופולרי
                            • לא נפתר
                            • משתמשים
                            • חיפוש גוגל בפורום
                            • צור קשר