我试图将当前的电子邮件保存到文件夹中。
我修改了我的代码。但是,有一个错误。
*438 : object doesn't support this property or method.*
关于此代码:
GetCurrentItem().SaveAsFile StrFile, olMSG
我的VBA代码:
Public fso As New FileSystemObject
Public objApp As Outlook.Application
Public OutMail As Outlook.MailItem
Public strPath As String
Public StrFile As String
Function GetCurrentItem() As Object
Set objApp = CreateObject("Outlook.Application")
On Error Resume Next
Select Case TypeName(objApp.ActiveWindow)
Case "Explorer"
Set GetCurrentItem = objApp.ActiveExplorer.Selection.Item(1)
Case "Inspector"
Set GetCurrentItem = objApp.ActiveInspector.CurrentItem
End Select
Set objApp = Nothing
End Function
Sub saveMyEmail()
strPath = "C:\Users\admin\Desktop\my vba\fso\"
StrFile = strPath & Worksheets("Main").Range("A1").Value & ".msg"
GetCurrentItem().SaveAsFile StrFile, olMSG
Set fso = Nothing
End Sub
答案 0 :(得分:0)
如果在Outlook VBA环境中运行代码:
Set myItem = Application.ActiveInspector
您需要将objApp对象设置为Application类的实例,或者使用Outlook VBA中的全局Application属性。