Si desea fusionar todos los elementos de varias carpetas de Outlook y asegurarse de que no haya duplicados, puede utilizar el método presentado en este artículo. Está usando código VBA para ayudarlo a lograrlo como un corcho.

A veces, es posible que desee combinar elementos de varias carpetas de Outlook, como combinar todos los contactos de varias carpetas de Contactos de Outlook. En esta situación, si hay algunos contactos duplicados entre estas carpetas, debe esperar que los duplicados se puedan eliminar automáticamente durante la fusión. Bajo esta circunstancia, puede hacer uso del siguiente código VBA para realizarlo con facilidad y sin esfuerzo.
Combinar elementos de varias carpetas sin duplicados
- A start con, inicie su aplicación Outlook.
- Luego, debe acceder al editor de Outlook VBA presionando el botón "Alt + F11" en la pantalla principal de Outlook.
- A continuación, en la ventana "Microsoft Visual Basic para aplicaciones", debe abrir un módulo que no se esté utilizando.
- Después de eso, debe copiar el siguiente código VBA en este módulo.
'Here we take "merging two folders" as an example
Sub MergeOutlookFolders_WithoutDuplicates()
Dim objSourceFolder As Outlook.Folder
Dim objTargetFolder As Outlook.Folder
Dim i, n, x As Long
Dim objItem As Object
Dim objDictionary As Object
Dim strKey As String
Set objSourceFolder = Application.Session.PickFolder
Set objTargetFolder = Application.Session.PickFolder
If objSourceFolder.DefaultItemType <> objTargetFolder.DefaultItemType Then
MsgBox "Error: The two folders are not in same type!", vbExclamation + vbOKOnly
Else
'Merge the two folders
For i = objSourceFolder.Items.count To 1 Step -1
Set objItem = objSourceFolder.Items.Item(i)
objItem.Move objTargetFolder
Next i
Set objDictionary = CreateObject("scripting.dictionary")
'Remove the duplicates
x = 0
For n = objTargetFolder.Items.count To 1 Step -1
Set objItem = objTargetFolder.Items.Item(n)
Select Case objItem.Class
Case olMail
strKey = objItem.Subject & "," & objItem.Body & "," & objItem.SentOn
Case olAppointment
strKey = objItem.Subject & "," & objItem.Start & "," & objItem.Duration & "," & objItem.Location & "," & objItem.Body
Case olContact
strKey = objItem.FullName & "," & objItem.Email1Address & "," & objItem.Email2Address & "," & objItem.Email3Address
Case olTask
strKey = objItem.Subject & "," & objItem.StartDate & "," & objItem.DueDate & "," & objItem.Body
End Select
strKey = Replace(strKey, ", ", Chr(32))
If objDictionary.Exists(strKey) = True Then
objItem.Delete
x = x + 1
Else
objDictionary.Add strKey, True
End If
Next n
'Prompt you of the count of removed duplicates
If x <> 0 Then
MsgBox x & " duplicates removed when merging!", vbInformation + vbOKOnly
End If
End If
End Sub
- Más tarde, debe verificar la configuración de la macro de Outlook, asegurándose de que la macro esté habilitada.
- Finalmente puedes intentarlo.
- En primer lugar, volvamos a la ventana del nuevo módulo.
- A continuación, presione el botón de la tecla F5 para activar esta macro.
- Luego, debe seleccionar las dos carpetas que se fusionarán. El primero es el de origen y el segundo es el tarconseguir uno.
- Después de eso, Outlook comenzará a mover todos los elementos de la carpeta de origen a la tarconseguir uno. Además, mientras tanto, los duplicados se eliminarán automáticamente.
- En última instancia, es posible que reciba un mensaje que le pregunte el recuento de duplicados eliminados, como la siguiente captura de pantalla:
Pequeños errores pueden provocar grandes bloqueos
A pesar de estar cargado con una gran cantidad de funciones excelentes, Outlook sigue siendo susceptible a errores y corrupción. Quizás haya encontrado varios problemas de Outlook. Muchos usuarios tienden a ignorar los errores aleatorios. Sin embargo, es el pequeño error el que provoca bloqueos graves de Outlook, lo que pondrá en peligro el archivo de Outlook. Por lo tanto, no debe ignorar los pequeños errores. En cambio, debes eliminarlos lo antes posible. Además, será mejor que mantenga un apto Reparación de PST herramienta, como DataNumen Outlook Repair. A través de su alta tasa de recuperación, esta utilidad ha superado a sus pares.
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 sql dañado y productos de software de reparación de Outlook. Para más información visite www.datanumen.com

