【问题标题】:Import Gmail Message to Google Sheet as text so it falls into Cells将 Gmail 邮件以文本形式导入 Google 表格,使其落入单元格
【发布时间】:2015-08-28 13:04:35
【问题描述】:

对不起,这个有点神秘的标题,不知道如何表达它!这是我的问题:

我正在使用此代码:

function getMessagesWithLabel() {
     var destArray = new Array();
      var threads = GmailApp.getUserLabelByName('Staff').getThreads(0,1);

      for(var n in threads){
            var msg = threads[n].getMessages();
            var destArrayRow = new Array();
            destArrayRow.push('thread has '+threads[n].getMessageCount()+' messages');
              for(var m in msg){
                destArrayRow.push(msg[m].getBody());
               }
      destArray.push(destArrayRow);           
            }
    Logger.log(destArray);
    var ss = SpreadsheetApp.getActiveSpreadsheet();
    var sh = ss.getActiveSheet();
    if(ss.getLastRow()==0){sh.getRange(1,1).setValue('getMessagesWithLabel() RESULTS')};
    sh.getRange(ss.getLastRow()+1,1,destArray.length,destArray[0].length).setValues(destArray)
    }

将带有标签员工的第一封电子邮件的正文拉入谷歌表格。

这很有效,但将身体全部放在一个单元格中(B2)

有没有办法将电子邮件的正文作为文本“粘贴”到工作表中,以便正文的每一行都落入自己的单元格中?

如果没有办法这样做,我发现如果我输入 B2 来编辑它,然后 CTRL+A 和 CTRL+C,我可以粘贴到一个新的范围,内容会落入每行一个单元格。然后我可以处理电子邮件正文的内容——我需要从中提取姓名列表,使用公式整理文本并删除 html 代码。如何使用谷歌应用脚​​本编辑单元格的复制粘贴。我已经尝试了所有的“复制”和“范围”功能,这些都只是复制了我已经拥有的。

对解决方案满意吗?

谢谢

提姆

【问题讨论】:

    标签: google-sheets gmail


    【解决方案1】:

    天哪,这太简单了!在谷歌搜索解析 gmail 等之后,答案正盯着我看,这一切都可以在谷歌表格中轻松完成。使用 transposesplitCHAR(10) 作为分隔符给了我我想要的。 CHAR(10) 在 gmail 正文中查找新行。

    =transpose(split(Sheet1!B2, CHAR(10), TRUE))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-11-20
      • 2022-09-23
      • 2013-10-24
      • 2022-09-29
      • 2019-08-24
      • 1970-01-01
      • 2014-12-01
      • 1970-01-01
      相关资源
      最近更新 更多