2016-05-05 6 views
2

私はOutlook VBAを初めて使い、下のコードでサブフォルダを設定する方法を理解するのに苦労しています。私は一日中この問題を解決するのに困っています。私は何が欠けているか分からない。サブフォルダの設定に問題があります

Sub DeleteOlderThan6months() 

Dim oFolder As Folder 
Dim Date6months As Date 
Dim ItemsOverMonths As Outlook.Items 

Dim DateToCheck As String 

Date6months = DateAdd("d", -1, Now()) 
Date6months = Format(Date6months, "mm/dd/yyyy") 


Set oFolder = oFolder.Folders("[email protected]").Folders("Inbox").Folders("Zip Files") 

DateToCheck = "[Received] <= """ & Date6months & """" 

Set ItemsOverMonths = oFolder.Items.Restrict(DateToCheck) 

For i = ItemsOverMonths.Count To 1 Step -1 
ItemsOverMonths.Item(i).Delete 
Next 


Set ItemsOverMonths = Nothing 
Set oFolder = Nothing 


End Sub 
+1

の可能性のある重複した[受信トレイ内のサブフォルダにアクセスするためのVisual Basicを使用していますか?](https://stackoverflow.com/質問/ 8322432/visual-basic-to-access-subfolder-in-inbox) – niton

答えて

1

これはそれを行う必要があり、私はサブフォルダを設定する方法を見て

Option Explicit 
Sub DeleteOlderThan6months() 
    '// Declare variables 
    Dim oFolder As Folder 
    Dim Date6months As Date 
    Dim ItemsOverMonths As Outlook.Items 
    Dim DateToCheck As String 
    Dim olNs As Outlook.NameSpace 
    Dim Inbox As Outlook.MAPIFolder 
    Dim oItem As Object 
    Dim i As Long 

    '// set your inbox and subfolder 
    Set olNs = Application.GetNamespace("MAPI") 
    Set Inbox = olNs.GetDefaultFolder(olFolderInbox) 
    Set oFolder = Inbox.Folders("Zip Files") 

    Date6months = DateAdd("d", -1, Now()) 
    Date6months = Format(Date6months, "mm/dd/yyyy") 

    DateToCheck = "[Received] <= """ & Date6months & """" 
    Set ItemsOverMonths = oFolder.Items.Restrict(DateToCheck) 

    '// Loop through the Items in the folder backwards 
    For i = ItemsOverMonths.Count To 1 Step -1 
     Set oItem = ItemsOverMonths.Item(i) 
     If TypeOf oItem Is Outlook.MailItem Then 
      Debug.Print oItem.Subject 
      oItem.Delete 
     End If 
    Next 

    Set ItemsOverMonths = Nothing 
    Set oFolder = Nothing 

End Sub 
+0

これもありがとうございました。本当にサポートを感謝します。 – OAD

1
set Inbox = Application.Session.GetDefaultFolder(olFolderInbox) 
set oFolder = Inbox.Folders.Item("Zip Files") 
+0

ありがとうございました。これは私の問題を修正しました。 – OAD

関連する問題