Come eseguire rapidamente una regola specifica in tutte le cartelle di posta con Outlook VBA

Condividi ora:

Per impostazione predefinita, puoi eseguire una regola solo in una cartella alla volta. In questo articolo, ti insegneremo come utilizzare un pezzo di codice VBA per eseguire una regola specifica in tutte le cartelle di posta.

Outlook consente agli utenti di eseguire la regola manualmente. Puoi semplicemente accedere alla finestra di dialogo "Regole e avvisi" e premere il pulsante "Esegui regole ora". Nella finestra di dialogo successiva, seleziona una regola specifica e scegli una cartella in cui desideri eseguire questa regola. Tuttavia, se desideri eseguire rapidamente una regola in tutte le cartelle di posta, puoi utilizzare il seguente codice VBA.

Esegui rapidamente una regola specifica in tutte le cartelle di posta con Outlook VBA

Esegui rapidamente una regola specifica in tutte le cartelle di posta

  1. In primo luogo, start il tuo programma Outlook.
  2. Quindi, nella finestra principale di Outlook, premi i pulsanti "Alt + F11".
  3. Avanti nella finestra emergente "Microsoft Visual Basic for Applications", dovresti aprire un modulo non in uso.
  4. Successivamente, copia il codice VBA di seguito in questa finestra del modulo. Inoltre, dovresti modificare alcune righe in base al tuo caso, come il nome della regola.
Sub RunSpecificRule_AllMailFolders()
    Dim objStores As Outlook.Stores
    Dim objStore As Outlook.Store
    Dim objPSTFile As Outlook.Folder
    Dim objFolders As Outlook.folders
    Dim objFolder As Object

    Set objStores = Outlook.Application.Session.Stores
 
    'Process all Outlook PST files in your Outlook
    For Each objStore In objStores
        Set objPSTFile = objStore.GetRootFolder
        For Each objFolder In objPSTFile.folders
            Call ProcessFolders(objFolder)
        Next
    Next

    MsgBox "Complete!", vbExclamation + vbOKOnly, "Run Rule "
End Sub

Sub ProcessFolders(ByVal objCurrentFolder As Outlook.Folder)
    Dim objRules As Outlook.Rules
    Dim objRule As Outlook.Rule
    Dim objSubfolder As Outlook.Folder

    Set objRules = Outlook.Application.Session.DefaultStore.GetRules
    'Change the rule name as per your actual case
    Set objRule = objRules.Item("Move Mails to Temp")
 
    On Error Resume Next
    'Only work on non-empty Mail folder
    If objCurrentFolder.Items.count > 0 And objCurrentFolder.DefaultItemType = olMailItem Then
       With objRule
            .Enabled = True
            .Execute ShowProgress:=True, Folder:=objCurrentFolder, IncludeSubfolders:=True
       End With
    End If
 
    'Process subfolders recursively
    If objCurrentFolder.folders.count > 0 Then
       For Each objSubfolder In objCurrentFolder.folders
           Call ProcessFolders(objSubfolder)
       Next
    End If
End Sub

Codice VBA: esegui una regola specifica in tutte le cartelle di posta

  1. Successivamente, dovresti controllare le impostazioni della macro di Outlook, assicurandoti che la macro sia consentita.
  2. Alla fine puoi provare.
  • Basta fare clic sulla subroutine "RunSpecificRule_AllMailFolders".
  • Quindi premere il tasto F5 per attivare questo codice.
  • Successivamente la macro verrà eseguita immediatamente.
  • Al termine, riceverai un messaggio, come lo screenshot seguente. Si riferisce alla regola è finita.Esecuzione completata

Fai attenzione alle macro dannose

Come tutti sappiamo, le e-mail dannose sono diventate sempre più dilaganti. Tali e-mail spesso contengono macro dannose. Pertanto, se si imposta il livello di sicurezza delle macro di Outlook su un livello basso, è necessario fare attenzione ai virus e ai malware nascosti. Inoltre, è prudente procurarsi un potente strumento di correzione PST, come ad esempio DataNumen Outlook Repair. È in grado di riparare PST archivia ed estrai il massimo dei dati per te senza sudare.

Introduzione dell'autore:

Shirley Zhang è un'esperta di recupero dati in DataNumen, Inc., che è il leader mondiale nelle tecnologie di recupero dati, tra cui recuperare mdf e prodotti software di riparazione di Outlook. Per maggiori informazioni visita www.datanumen.com

Condividi ora:

I commenti sono chiusi.