从电子邮件中提取第3行和第4行

我需要从电子邮件中导出第3行和第4行。 我有一个存储在Microsoft Outlook会话中的VBA代码。 它运行良好,但它导出整个邮件正文。 我只需要3号线和4号线。

这里是示例代码:

Option Explicit Private WithEvents Items As Outlook.Items Private Sub Application_Startup() Dim olApp As Outlook.Application Dim objNS As Outlook.NameSpace Set olApp = Outlook.Application Set objNS = olApp.GetNamespace("MAPI") Set Items = objNS.GetDefaultFolder(olFolderInbox).Folders("Leads").Items End Sub Private Sub Items_ItemAdd(ByVal item As Object) On Error GoTo ErrorHandler Dim Msg As Outlook.MailItem Dim oXL As Object Dim oWS As Object Dim lngRow As Long Set oXL = CreateObject("Excel.Application") oXL.Workbooks.Open FileName:="C:\temp\Mail_Export.xlsx", AddTOMRU:=False, UpdateLinks:=False Set oWS = oXL.Sheets("Sheet1") lngRow = oWS.Range("A" & oXL.Rows.Count).End(-4162).Offset(1).Row If TypeName(item) = "MailItem" Then Set Msg = item With oWS .cells(lngRow, 1).Value = Msg.SenderName .cells(lngRow, 2).Value = Msg.SenderEmailAddress .cells(lngRow, 3).Value = Msg.Body End With With oXL .activeworkbook.Save .activeworkbook.Close SaveChanges:=2 ' .Application.Quit End With Set oXL = Nothing Set oWS = Nothing End If ExitPoint: Exit Sub ErrorHandler: MsgBox Err.Number & " - " & Err.Description Resume ExitPoint Resume End Function 

Mail_Export.xlsx自动保存从MS Outlook中的“Leads”文件夹导出的电子邮件。 但是,我只需要第3行和第4行。

这是样本邮件正文:

 Hi Team Following people contacted your helpdesk:- Name: ABC DEF Email: abc.def@gmail.com Thank you XYZ Consultants 

Msg.Body可能是这样的forms:

你好团队[CR] [LF]以下人员联系你的服务台: – [CR] [LF]名称:ABC DEF [CR] [LF] Email:abc.def@gmail.com [CR] [LF] XYZ顾问

其中[CR]表示回车,[LF]表示换行。

以下将Msg.Body分割成几行:

 Dim Lines() As String Lines = Split(Msg.Body, vbCR & vbLF) 

然后你可以提取第3行和第4行:

 .cells(lngRow, 3).Value = Lines(LBound(Lines)+2) & vbLF & _ Lines(LBound(Lines)+3) 

我对这个问题的答案如何使用VBA或Macros将Outlook邮件复制到Excel中将使您更全面地了解Outlook邮件项目对于VBAmacros的外观。