¿Cómo mover correos a otra carpeta desde Excel?

Para mover correos electrónicos a otra carpeta utilizando Excel, necesitarás utilizar un lenguaje de scripting en combinación con Excel para interactuar con una aplicación de correo electrónico, como Microsoft Outlook. Esto se puede lograr utilizando VBA (Visual Basic for Applications) en Excel. A continuación, te proporcionaré una guía básica sobre cómo hacerlo:

Paso 1: Preparar el entorno

  • Abrir Excel: Asegúrate de tener la hoja de Excel donde tienes los datos de los correos que quieres mover.
  • Abrir el Editor de VBA:
    • Presiona `ALT` + `F11` para abrir el Editor de Visual Basic.
  • Habilitar la referencia a la biblioteca de Outlook:
    • En el editor de VBA, ve a `Herramientas` > `Referencias`.
    • Busca `Microsoft Outlook XX.0 Object Library` (donde XX puede ser 16, 15, 14 dependiendo de tu versión de Office).
    • Marca la casilla y haz clic en `Aceptar`.

Paso 2: Crear el script VBA

Ahora, vas a crear un script básico para mover los correos electrónicos:

Sub MoverCorreos()
    Dim OutlookApp As Outlook.Application
    Dim MapaNamespace As Outlook.Namespace
    Dim CarpetaInbox As Outlook.MAPIFolder
    Dim CarpetaDestino As Outlook.MAPIFolder
    Dim MailItem As Outlook.MailItem
    Dim i As Integer
    Dim MiAsunto As String
    Dim Elemento As Object

    'Iniciar la aplicación de Outlook
    Set OutlookApp = New Outlook.Application
    Set MapaNamespace = OutlookApp.GetNamespace("MAPI")
    Set CarpetaInbox = MapaNamespace.GetDefaultFolder(olFolderInbox)
    
    'Establecer la carpeta de destino
    Set CarpetaDestino = MapaNamespace.Folders("NombreDeTuCarpeta")

    'Iterar por todos los elementos en la bandeja de entrada
    For i = CarpetaInbox.Items.Count To 1 Step -1
        Set Elemento = CarpetaInbox.Items(i)
        
        If TypeOf Elemento Is MailItem Then
            Set MailItem = Elemento
            'Busca por el asunto en la columna A de Excel
            MiAsunto = Range("A" & i).Value
            'Si el asunto coincide, mover el correo
            If MiAsunto = MailItem.Subject Then
                MailItem.Move CarpetaDestino
            End If
        End If
    Next i

    'Liberar los objetos
    Set MailItem = Nothing
    Set CarpetaInbox = Nothing
    Set CarpetaDestino = Nothing
    Set MapaNamespace = Nothing
    Set OutlookApp = Nothing
End Sub

Paso 3: Personalizar el script

  • NombreDeTuCarpeta: Cambia esto por el nombre exacto de la carpeta a la que deseas mover los correos.
  • Rango de Excel: Asegúrate de que la columna A de tu hoja de Excel contenga los asuntos de los correos electrónicos que deseas mover.

Paso 4: Ejecutar el script

  • Guarda tu trabajo y cierra el Editor de VBA.
  • En Excel, presiona `ALT` + `F8` para abrir el cuadro de diálogo «Macro».
  • Selecciona `MoverCorreos` y haz clic en `Ejecutar`.

Este script solo se aplica a correos que coincidan exactamente con el asunto proporcionado en la columna A de tu hoja de Excel. Asegúrate de que Outlook esté correctamente configurado y abierto para ejecutar este script. Además, ten en cuenta la necesidad de ajustes de seguridad que podrían ser necesarios según la configuración de tu organización.

Conoce nuestros servicios

Conoce nuestra tienda

Mejora tu nivel y logra tus objetivo

Excel

Excel cursos

Access

cursos de Access

Power BI

cursos power BI

Deja un comentario