Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/17.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.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在outlook中自动回复?_Vba_Excel - Fatal编程技术网

如何通过Excel VBA在outlook中自动回复?

如何通过Excel VBA在outlook中自动回复?,vba,excel,Vba,Excel,我正在尝试我的运气,有一个程序,您可以在outlook中使用Excel VBA回复选定的电子邮件。不幸的是,我找不到任何工作代码 Option Explicit Sub ReplyMSG() Dim olItem As Outlook.MailItem Dim olReply As MailItem ' Reply Dim olRecip As Recipient ' Add Recipient Dim myOlExp As Outlook.Explorer Dim myOl

我正在尝试我的运气,有一个程序,您可以在outlook中使用Excel VBA回复选定的电子邮件。不幸的是,我找不到任何工作代码

Option Explicit
Sub ReplyMSG()
  Dim olItem As Outlook.MailItem
  Dim olReply As MailItem ' Reply
  Dim olRecip As Recipient ' Add Recipient
  Dim myOlExp As Outlook.Explorer
  Dim myOlSel As Outlook.Selection

  Set myOlExp = Application.ActiveExplorer
  Set myOlSel = myOlExp.Selection

  For Each olItem In myOlSel
  Set olReply = olItem.ReplyAll
  Set olRecip = olReply.Recipients.Add("Email Address Here") ' Recipient Address
    olRecip.Type = olCC
        olReply.HTMLBody = "Hello, Thank you. " & vbCrLf & olReply.HTMLBody
    olReply.Display

    'olReply.Send
  Next olItem
End Sub

我正在尝试使用此代码,但错误438对象不支持此属性或方法不断出现。希望获得有关此自动化的帮助。

如果您使用Excel VBA编写,则术语“应用程序”适用于Excel。Excel应用程序没有ActiveExplorer属性。您应该挂回Outlook应用程序,我在提供的代码中没有看到它,比如Set
myOlExp=refToOutlookApplication.ActiveExplorer

请看上面所显示的内容:

Set myOlExp=Application.ActiveExplorer

这意味着
设置myOlExp=Excel.Application.ActiveExplorer
,问题是Excel应用程序没有资源管理器对象

所以您需要:
Set myOlExp=refToOutlookApplication.ActiveExplorer

您需要明确声明您希望为Outlook应用程序的属性分配一个变量,在这个阶段,我将假设您已经在模块中的其他地方创建了一个引用

如果没有,则您需要使用:

Dim refToOutlookApplication As Object    'Outlook.Application
Set refToOutlookApplication = GetObject(, "Outlook.Application")

如果使用Excel VBA编写,则术语
应用程序
适用于Excel。Excel应用程序没有
ActiveExplorer
属性。你应该回到我在提供的代码中没有看到的Outlook应用程序,比如
Set myOlExp=myOutlookApp.ActiveExplorer
?代码已在此处将其设置为Outlook应用程序
Dim myOlExp As Outlook.Explorer
对吗?