通过Excel VBA从当前查看的电子邮件中提取数据

时间:2014-06-25 09:12:41

标签: excel vba excel-vba outlook-vba

我是Excel VBA的新手,仍在努力理解Excel VBA。 我试图让我的团队成员的生活更轻松。

感谢有人可以指点我如何从当前查看的电子邮件中检索文本并将信息粘贴到Excel speadsheet上。

电子邮件看起来像这样。

Name: Tan AK
Contact number: 65-12223456

===================================== 想提取出细节

E.g

Cell A1 should display the first sentence
Cell A2 should display the second sentence.

感谢有人可以帮助我。

1 个答案:

答案 0 :(得分:1)

像你这样的一般性问题在这里不受欢迎。下面我提供一些可以帮助您入门的信息。如果遇到困难,请尝试这样的问题:

我想达到A,但下面的半打声明做B.我看不出我做错了什么。

关注单个问题并展示您尝试过的问题通常会很快得到解答。


Outlook安全系统使得Excel宏从Outlook读取比读取Excel的Excel宏要困难得多。

另一方面,分发Excel宏要容易得多,因为您可以将工作簿通过电子邮件发送给每个朋友,他们可以立即使用它。使用Outlook宏,您必须导出模块,然后每个朋友都必须导入它。

我建议你从Outlook宏开始。如果你已经学会了让宏满意地工作,你可能已经足够了解从Outlook开始探索阅读的问题。


这个小小的Outlook宏显示了如何访问所选的电子邮件:

Option Explicit
Public Sub DemoExplorer()

  Dim Exp As Outlook.Explorer
  Dim ItemCrnt As MailItem
  Dim NumSelected As Long

  Set Exp = Outlook.Application.ActiveExplorer

  NumSelected = Exp.Selection.Count

  If NumSelected = 0 Then
    Debug.Print "No emails selected"
  Else
    For Each ItemCrnt In Exp.Selection
      With ItemCrnt
        Debug.Print "From " & .SenderName & " Subject " & .Subject
      End With
    Next
  End If

End Sub

下面的答案中的Outlook宏创建了一个Excel工作簿,并将收件箱中每封电子邮件的详细信息导出到该工作簿。这展示了您需要的许多技术。也许更重要的是,它显示了电子邮件的文本和html正文对VBA宏的影响。这将帮助您将一个正文分成句子。

How to copy Outlook mail message into excel using VBA or Macros