Come salvare automaticamente e-mail inviate specifiche in una cartella specifica con VBA di Outlook

Condividi ora:

Per impostazione predefinita, Outlook salverà le e-mail inviate nella cartella "Posta inviata". Se non desideri salvare i messaggi specifici inviati nella cartella predefinita, puoi utilizzare il metodo introdotto in questo articolo.

Alcuni utenti desiderano salvare automaticamente alcune e-mail inviate nella cartella specificata invece di salvarle nella cartella predefinita "Posta inviata". Così molti ricorrono alla regola di Outlook, che offre un'azione simile: "sposta una copia nella cartella specificata", mostrata nella seguente schermata. Tuttavia, in questo modo, in realtà, l'e-mail inviata originale viene ancora salvata nella cartella "Posta inviata". Solo una copia dell'e-mail inviata viene spostata nella cartella specificata. Apparentemente, questa funzione non può soddisfare le reali esigenze.Crea una regola per spostare automaticamente una copia nella cartella specificata

Naturalmente, gli utenti possono specificare manualmente una cartella non predefinita per salvare l'e-mail inviata. Basta andare alla scheda "Opzioni" e fare clic su "Salva elemento inviato in" > "Altra cartella". Ma questo approccio sarà problematico poiché gli utenti devono specificare manualmente la cartella ogni volta.Salva manualmente l'elemento inviato in un'altra cartella

Ora che entrambi i mezzi sopra menzionati non sono efficienti, perché non ricorrere al VBA di Outlook? Ecco i codici e i passaggi concreti per salvare automaticamente le e-mail inviate specifiche in una cartella specifica.

Salva automaticamente e-mail inviate specifiche in una cartella specifica

  1. A start con, avvia l'applicazione Outlook.
  2. Quindi dovresti premere i pulsanti "Alt + F11", che ti aiuteranno ad accedere alla finestra dell'editor VBA.
  3. Nella finestra popup "Microsoft Visual Basic for Applications", puoi trovare e fare doppio clic sul progetto "ThisOutlookSession" nella parte sinistra.
  4. Successivamente, nella finestra del progetto "ThisOutlookSession" aperta, è necessario copiare i seguenti codici VBA al suo interno.
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim SentFolder As Folder
    Dim desFolder As Folder
 
    If TypeName(Item) = "MailItem" And Item.DeleteAfterSubmit = False Then
       'Specify the sent emails
       If InStr(Item.To, "shirley") > 0 Or InStr(LCase(Item.Subject), "test") > 0 Then
          'Specify the folder for saving the sent emails
          'You can change it as per your needs
          Set SentFolder = Application.Session.GetDefaultFolder(olFolderSentMail)
          Set desFolder = SentFolder.Folders("Test")
          Set Item.SaveSentMessageFolder = desFolder
       End If
    End If
End Sub

Codici VBA - Salva automaticamente e-mail inviate specifiche in una cartella specifica

  1. Successivamente, dovresti firmare questo codice e regolare il livello macro di Outlook su basso.
  2. Infine, puoi uscire dalla finestra corrente. D'ora in poi, le e-mail inviate specifiche verranno salvate automaticamente nella cartella di posta specificata.

Suggerimento extra: visualizzare la finestra di dialogo "Seleziona cartella" durante l'invio

Ci sono alcune persone che vorrebbero selezionare manualmente la cartella della posta per salvare le email inviate. Ma andare sempre alla scheda "Opzioni" per selezionare la cartella sarà disordinato. In questo caso, desiderano che Outlook possa visualizzare automaticamente la finestra di dialogo "Seleziona cartella" durante l'invio. In risposta a questa esigenza, ecco altri codici VBA. Puoi copiarlo nel progetto "ThisOutlookSession".

Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)
    Dim desFolder As Folder
 
    If TypeName(Item) = "MailItem" And Item.DeleteAfterSubmit = False Then
       'specify the email
       If InStr(Item.To, "shirley") > 0 Or InStr(LCase(Item.Subject), "test") > 0 Then
          'Display the “Select Folder” dialog box
          Set desFolder = Application.Session.PickFolder
          Set Item.SaveSentMessageFolder = desFolder
       End If
    End If
End Sub

Codici VBA - Visualizza automaticamente la finestra di dialogo "Seleziona cartella" durante l'invio

D'ora in poi, ogni volta che finisci un'e-mail e fai clic sul pulsante "Inviato", la finestra di dialogo "Seleziona cartella" si aprirà automaticamente, come l'immagine qui sotto. A quel punto, puoi specificare la cartella in cui salvare l'e-mail attualmente inviata.Finestra di dialogo Seleziona cartella

Ripara Outlook

Outlook guadagna molti complimenti per le sue molteplici funzioni. Tuttavia, è a causa della ricchezza di funzionalità che Outlook è piuttosto vulnerabile. Inoltre, l'e-mail dannosa è una delle most potenziali minacce ai dati di Outlook. Pertanto, come normali utenti di Outlook, faresti meglio a procurarti un preminente Strumento di correzione della posta PST di Outlook, piace DataNumen Outlook Repair. In tal modo, puoi risolvere rapidamente vari errori di Outlook e mantenere i tuoi dati di Outlook ben protetti.

Introduzione dell'autore:

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

Condividi ora:

I commenti sono chiusi.