Excel 处理Outlook中每封电子邮件的主题行

Excel 处理Outlook中每封电子邮件的主题行,excel,vba,outlook,Excel,Vba,Outlook,目前,我正在尝试处理从outlook收到的每封电子邮件的主题行。所有主题行都列在F列。我想显示电子邮件的所有主题行(重复项将被删除,每个对话只保留一行-带有RE或FW的邮件已被删除)。新的工作表将包含收件箱中的所有主题行(在删除重复项后仅拍摄一次) 代码: 您不需要任何代码来提取所有唯一的主题行 在Outlook文件夹中,突出显示要处理的所有电子邮件 点击ctrl-c(复制) 单击excel工作表 点击ctrl-v(粘贴) 删除任何不需要的列 删除所有出现的“fw:” 删除所有出现的“re:”

目前,我正在尝试处理从outlook收到的每封电子邮件的主题行。所有主题行都列在F列。我想显示电子邮件的所有主题行(重复项将被删除,每个对话只保留一行-带有RE或FW的邮件已被删除)。新的工作表将包含收件箱中的所有主题行(在删除重复项后仅拍摄一次)

代码:


您不需要任何代码来提取所有唯一的主题行

  • 在Outlook文件夹中,突出显示要处理的所有电子邮件
  • 点击ctrl-c(复制)
  • 单击excel工作表
  • 点击ctrl-v(粘贴)
  • 删除任何不需要的列
  • 删除所有出现的“fw:”
  • 删除所有出现的“re:”
  • 选择主题列
  • 执行“删除重复项”命令(它位于excel2016中的“数据”选项卡中)

  • 。。。完成

    那么你的问题是什么?你一个也没问。请阅读。寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅:如何创建。
    1
    您面临什么问题<代码>2为什么要更改Outlook主题行?为什么不将它存储在一个变量中,清除它,然后写入excel文件?@georgian1990,我应该在最初回答之前问这个问题。您是否已经在工作表中包含所有电子邮件信息?你的问题是从另一种语言翻译过来的吗?你实际上是在问如何从outlook中提取数据并将数据放入工作表,然后处理数据吗?这个答案在stackoverflow上是离题的。我同意,这是离题的,但最初提供的信息并不清楚。把评论放在问题中,这样OP就会得到自动通知。如果没有自动通知,您将在用户名前加@。
    For Each oItem In objSourceFolder.Items
    
        ThisWorkbook.Worksheets("Test 1 Mails").Range("A" & contor).Value = oItem.SentOn
        ThisWorkbook.Worksheets("Test 1 Mails").Range("B" & contor).Value = oItem.CreationTime
        ThisWorkbook.Worksheets("Test 1 Mails").Range("C" & contor).Value = oItem.ReceivedTime
        ThisWorkbook.Worksheets("Test 1 Mails").Range("D" & contor).Value = oItem.SenderName
        ThisWorkbook.Worksheets("Test 1 Mails").Range("E" & contor).Value = oItem.SenderEmailAddress
        If (Left(oItem.Subject, 4) = "FW: ") Or (Left(oItem.Subject, 4) = "Fw: ") Or (Left(oItem.Subject, 4) = "RE: ") Or (Left(oItem.Subject, 4) = "Re: ") Then
            oItem.Subject = Mid(oItem.Subject, 5)
            oItem.Save
             ThisWorkbook.Worksheets("Test 1 Mails").Range("F" & contor).Value = oItem.Subject
             ThisWorkbook.Worksheets("Outlook report").Range("B" & contor).Value = oItem.Subject
        Else
            If Left(oItem.Subject, 5) = "FWD: " Then
                oItem.Subject = Mid(oItem.Subject, 6)
                ThisWorkbook.Worksheets("Test 1 Mails").Range("B" & contor).Value = oItem.Subject
                ThisWorkbook.Worksheets("Outlook report").Range("B" & contor).Value = oItem.Subject
                oItem.Save
            End If
        End If