Cómo ejecutar rápidamente una regla específica en todas las carpetas de correo con Outlook VBA

Comparte ahora:

De forma predeterminada, solo puede ejecutar una regla en una carpeta a la vez. En este artículo, le enseñaremos cómo utilizar un fragmento de código VBA para ejecutar una regla específica en todas las carpetas de correo.

Outlook permite a los usuarios ejecutar la regla manualmente. Puede acceder al cuadro de diálogo "Reglas y alertas" y presionar el botón "Ejecutar reglas ahora". En el cuadro de diálogo siguiente, seleccione una regla específica y elija una carpeta en la que desee ejecutar esta regla. Pero, si desea ejecutar rápidamente una regla en todas las carpetas de correo, puede usar el siguiente código VBA.

Ejecute rápidamente una regla específica en todas las carpetas de correo con Outlook VBA

Ejecute rápidamente una regla específica en todas las carpetas de correo

  1. En primer lugar, start su programa Outlook.
  2. Luego, en la ventana principal de Outlook, presione los botones de tecla "Alt + F11".
  3. A continuación, en la ventana emergente "Microsoft Visual Basic para aplicaciones", debe abrir un módulo que no esté en uso.
  4. Posteriormente, copie el código VBA a continuación en esta ventana del módulo. Además, debe cambiar algunas líneas según su propio caso, como el nombre de la regla.
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

Código VBA: ejecute una regla específica en todas las carpetas de correo

  1. Después de eso, debe verificar la configuración de la macro de Outlook, asegurándose de que la macro esté permitida.
  2. Eventualmente puedes intentarlo.
  • Simplemente haga clic en la subrutina "RunSpecificRule_AllMailFolders".
  • Luego presione el botón de la tecla F5 para activar este código.
  • A continuación, la macro se ejecutará inmediatamente.
  • Una vez que se complete, recibirá un mensaje, como la siguiente captura de pantalla. Se refiere a que la regla ha terminado.Ejecutar completa

Cuidado con las macros maliciosas

Como todos sabemos, los correos electrónicos maliciosos se han vuelto cada vez más desenfrenados. Estos correos electrónicos suelen llevar macros maliciosos. Por lo tanto, si configura el nivel de seguridad macro de Outlook en un nivel bajo, debe tener cuidado con los virus y el malware ocultos. Además, es prudente hacerse con una poderosa herramienta de reparación de PST, como DataNumen Outlook Repair. Es capaz de reparar PST archivar y extraer el máximo de datos para usted sin sudar.

Introducción del autor:

Shirley Zhang es experta en recuperación de datos en DataNumen, Inc., que es el líder mundial en tecnologías de recuperación de datos, incluyendo recuperar mdf y productos de software de reparación de Outlook. Para más información visite www.datanumen.com

Comparte ahora:

Los comentarios están cerrados.