Come unire rapidamente elementi da più cartelle senza duplicati in Outlook

Condividi ora:

Se desideri unire tutti gli elementi da più cartelle di Outlook e assicurarti che non ci siano duplicati, puoi utilizzare il metodo introdotto in questo articolo. Sta usando il codice VBA per aiutarti a realizzarlo come un tappo di sughero.

Unisci rapidamente elementi da più cartelle senza duplicati in Outlook

A volte, potresti voler unire elementi da diverse cartelle di Outlook, come unire tutti i contatti di diverse cartelle di contatti di Outlook. In questa situazione, se ci sono dei contatti duplicati tra queste cartelle, devi sperare che i duplicati possano essere rimossi automaticamente durante l'unione. In questa circostanza, puoi utilizzare il seguente codice VBA per realizzarlo con facilità.

Unisci elementi da più cartelle senza duplicati

  1. A start con, avvia l'applicazione Outlook.
  2. Quindi, dovresti accedere all'editor VBA di Outlook premendo il tasto "Alt + F11" nella schermata principale di Outlook.
  3. Successivamente, nella finestra "Microsoft Visual Basic for Applications", è necessario aprire un modulo che non viene utilizzato.
  4. Successivamente, dovresti copiare il seguente codice VBA in questo modulo.
'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

Codice VBA: unisci elementi da più cartelle senza duplicati

  1. Successivamente è necessario controllare le impostazioni della macro di Outlook, assicurandosi che la macro sia abilitata.
  2. Finalmente puoi provare.
  • Innanzitutto, torna alla nuova finestra del modulo.
  • Quindi premere il tasto F5 per attivare questa macro.
  • Quindi è necessario selezionare le due cartelle da unire. Il primo è quello di origine, e il secondo è il tarprendine uno.
  • Successivamente, Outlook inizierà a spostare tutti gli elementi dalla cartella di origine al file tarprendine uno. Inoltre, nel frattempo, i duplicati verranno rimossi automaticamente.
  • Alla fine, potresti ricevere un messaggio che richiede il conteggio dei duplicati rimossi, come lo screenshot qui sotto:Messaggio che richiede il conteggio dei duplicati rimossi

Piccoli errori possono portare a grandi arresti anomali

Nonostante sia caricato con una quantità di funzioni eccellenti, Outlook è ancora suscettibile di errori e corruzione. Forse hai riscontrato vari problemi di Outlook. Molti utenti sono inclini a ignorare gli errori casuali. Tuttavia, è il piccolo errore che provoca gravi arresti anomali di Outlook, che metteranno a repentaglio il file di Outlook. Pertanto, non dovresti ignorare eventuali piccoli errori. Invece, dovresti eliminarli il prima possibile. Inoltre, faresti meglio a tenere un apt Riparazione PST strumento, come DataNumen Outlook Repair. Grazie al suo alto tasso di recupero, questa utility ha superato i suoi pari.

Introduzione dell'autore:

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

Condividi ora:

I commenti sono chiusi.