Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过Excel VBA从当前查看的电子邮件中提取数据_Excel_Vba_Outlook - Fatal编程技术网

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

通过Excel VBA从当前查看的电子邮件中提取数据,excel,vba,outlook,Excel,Vba,Outlook,我是Excel VBA新手,仍在努力理解Excel VBA。 我努力让我的团队成员的生活更轻松 如果有人能告诉我如何从当前查看的电子邮件中检索文本并将信息粘贴到Excel电子表格上,我将不胜感激 电子邮件看起来像这样 Name: Tan AK Contact number: 65-12223456 ===================================== 我想了解一下细节 例如 如果有人能帮助我,我将不胜感激。像你这样的一般性问题在这里不受欢迎。下面我给你一些信息,让你开始学

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

如果有人能告诉我如何从当前查看的电子邮件中检索文本并将信息粘贴到Excel电子表格上,我将不胜感激

电子邮件看起来像这样

Name: Tan AK
Contact number: 65-12223456
===================================== 我想了解一下细节

例如


如果有人能帮助我,我将不胜感激。

像你这样的一般性问题在这里不受欢迎。下面我给你一些信息,让你开始学习。如果遇到困难,可以尝试以下问题:

我想实现A,但下面的六条语句实现了B。我看不出我做错了什么

集中在一个问题上并证明你已经尝试过的问题通常会很快得到回答


Outlook安全系统使Excel宏从Outlook读取比Outlook宏写入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工作簿,并将收件箱中每封电子邮件的详细信息导出到该工作簿中。这演示了您将需要的许多技术。也许更重要的是,它显示了对于VBA宏来说,电子邮件的文本和html正文是什么样子的。这将帮助你把一个身体分成几个句子


“当前查看的电子邮件”-电子邮件在哪里?你在看什么?托尼,谢谢你的帮助。我会调查的。非常感谢!(^_^)
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