运行时错误438:从Excel中删除Outlook约会

时间:2017-03-12 13:33:03

标签: excel-vba outlook runtime-error vba excel

我编写了以下代码来删除Outlook日历子文件夹中的所有约会。我一直在努力寻找在代码中调用此子文件夹的正确方法,现在我很难过。它现在似乎能够调用正确的文件夹,但无法继续删除约会。在尝试将其导向子文件夹之前,我在默认日历上成功测试了此代码。

我已经注释掉下面的代码行,我收到运行时错误438:“对象不支持此属性或方法”。

我很感激能够让我知道我需要改变什么来解决这个问题。

Public Sub DeleteAppt()

Dim olApp As Object 'Outlook.Application
Dim olNS As Object 'Outlook.Namespace
Dim olAptItemFolder As Object 'Outlook.Folder
Dim olAptItem As Object 'Outlook.AppointmentItem
Dim i As Long

    Set olApp = CreateObject("Outlook.Application")
    Set olNS = olApp.Session
    Set olAptItemFolder = olNS.GetDefaultFolder(olFolderCalendar).Folders("TestCal").Items

    ''''For i = olAptItemFolder.Items.Count To 1 Step -1
        Set olAptItem = olAptItemFolder.Items(i)
        If olAptItem.Subject Like "***" Then
            olAptItem.Delete
        End If
    Next i

    Set olAptItem = Nothing
    Set olAptItemFolder = Nothing
    Set olApp = Nothing

End Sub

1 个答案:

答案 0 :(得分:-1)

更改行

For i = olAptItemFolder.Items.Count To 1 Step - 1

For i = olAptItemFolder.Count To 1 Step - 1