【发布时间】:2020-12-17 03:19:44
【问题描述】:
我不是 VBA 的粉丝,但我正在尝试构建一个简单的 VBA 代码来设置自动回复。
我 100% 确定,我在代码中有错误,但我找不到:
Option Explicit
Sub AutoReply(olItem As Outlook.MailItem)
Dim olOutMail As Outlook.MailItem
Dim Strsignature As String
Dim Spath As String
Strsignature = GetSignature(Spath)
Spath = "my_path" '->validpath
With olItem
Set olOutMail = olItem.Reply
With olOutMail
.Subject = "my_subject"
.HTMLBody = "my_text" & Strsignature
.Display 'send
End With
Set olOutMail = Nothing
End With
End Sub
功能:
Function GetSignature(fPath As String) As String
Dim fso As Object
Dim TSet As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set TSet = fso.GetFile(fPath).OpenAsTextStream(1, -2)
GetSignature = TSet.ReadAll
TSet.Close
End Function
测试:
Sub Test()
Dim olMsg As MailItem
On Error Resume Next
Set olMsg = ActiveExplorer.Selection.Item(1)
AutoReply olMsg
End Sub
如果我运行“测试”代码,什么都不会发生。
【问题讨论】:
标签: vba outlook automation