Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/email/3.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
Vba 使用visual basic在Outlook中创建附件和电子邮件主题_Vba_Email_Outlook_Ms Office - Fatal编程技术网

Vba 使用visual basic在Outlook中创建附件和电子邮件主题

Vba 使用visual basic在Outlook中创建附件和电子邮件主题,vba,email,outlook,ms-office,Vba,Email,Outlook,Ms Office,我试图用附件在Outlook中制作一封标准电子邮件。 但结果并不是我所期望的那样。 我收到两封电子邮件。 一封邮件包含附件,另一封邮件包含主题 Sub button() Dim myAttachments As Outlook.Attachments Set myItem = Application.CreateItem(olMailItem) Set myAttachments = myItem.Attachments myAttachments.Add "C:\Users\User\Ap

我试图用附件在Outlook中制作一封标准电子邮件。 但结果并不是我所期望的那样。 我收到两封电子邮件。 一封邮件包含附件,另一封邮件包含主题

Sub button()

Dim myAttachments As Outlook.Attachments

Set myItem = Application.CreateItem(olMailItem)
Set myAttachments = myItem.Attachments
myAttachments.Add "C:\Users\User\AppData\Roaming\Microsoft\Test.pdf", _
olByValue, 1, "Test"
myItem.Display

Dim oMail As Outlook.mailItem
Dim Item As Outlook.mailItem

Set Item = Application.ActiveExplorer.Selection(1)
Set oMail = Application.ActiveExplorer.Selection(1).Reply
Strbody = "HTML"

With oMail
.HTMLBody = Strbody
   .CC = ""
   .BCC = ""
   .Subject = "subject"
   .Display
 End With
End Sub
我想把那些电子邮件合并在一起。
提前感谢。

如果您正在创建一封带有附件的新电子邮件,然后又回复了一封创建了两封邮件的现有电子邮件,请尝试以下操作:

Sub button()

    With Application.ActiveExplorer.Selection(1).Reply
        .HTMLBody = "HTML"
        .CC = ""
        .BCC = ""
        .Subject = "subject"
        .Attachments.Add "C:\Users\User\AppData\Roaming\Microsoft\Test.pdf", olByValue, 1, "Test"
        .Display
    End With

End Sub

在代码中,您可以创建一个新邮件项目和对现有项目的回复。相反,您需要创建一个回复并在其中附加一个文件:

Dim myAttachments As Outlook.Attachments
Dim oMail As Outlook.mailItem
Dim Item As Outlook.mailItem

Set Item = Application.ActiveExplorer.Selection(1)
Set oMail = Application.ActiveExplorer.Selection(1).Reply
Strbody = "HTML"

With oMail
  .To = "sadasdasd@sdfsdgfgdfg.com"
  .HTMLBody = Strbody
  .Subject = "subject"
End With

Set myAttachments = oMail.Attachments
myAttachments.Add "C:\Users\User\AppData\Roaming\Microsoft\Test.pdf", _
   olByValue, 1, "Test"
oMail.Display