Come esportare rapidamente le statistiche di voto da un'e-mail di Outlook a un foglio di lavoro di Excel

Condividi ora:

Se hai inviato un'e-mail con pulsanti di voto, dopo che i destinatari ti hanno inviato le loro risposte, potresti voler contare ed esportare le statistiche di voto in un foglio di lavoro Excel. Quindi, in questa pagost, ti insegneremo come raggiungerlo rapidamente.

Outlook è così potente che offre persino una funzione di "votazione". Il mio precedente articolo “Uso abile di MS Outlook per il voto” ha insegnato come utilizzarlo in modo efficace. Inoltre, most di tempo, dopo aver votato, è possibile procedere all'esportazione delle statistiche di voto in un foglio di lavoro Excel per alcuni motivi, ad esempio per stampare le statistiche. Ma Outlook non lo supporta per impostazione predefinita. Quindi, nel seguito, ti insegneremo come realizzarlo come un tappo di sughero.

Esporta rapidamente le statistiche di voto da un'e-mail di Outlook a un foglio di lavoro Excel

Esporta le statistiche di voto in un'e-mail in un foglio di lavoro Excel

  1. All'inizio, avvia la tua applicazione Outlook.
  2. Quindi dovresti premere i pulsanti "Alt + F11" nella finestra principale di Outlook.
  3. Avanti nella finestra "Microsoft Visual Basic for Applications", dovresti abilitare "Microsoft Excel Object Librare". Fare clic su "Strumenti" > "Riferimento". Quindi, nella finestra di dialogo popup, contrassegnare la casella di controllo davanti a "Microsoft Excel Object Library" e infine premi "OK".
  4. Successivamente, puoi inserire un nuovo modulo o aprirne uno non in uso.
  5. Successivamente, copia e incolla i seguenti codici VBA in questo modulo.
Sub ExportVotingStatistics _Excel ()
    Dim objMail As Outlook.MailItem
    Dim objRecipient As Outlook.recipient
    Dim objVoteDictionary As Object
    Dim varVotingCounts As Variant
    Dim varVotingOptions As Variant
    Dim varVotingOption As Variant
    Dim i As Long
    Dim objExcelApp As Excel.Application
    Dim objExcelWorkbook As Excel.Workbook
    Dim objExcelWorksheet As Excel.Worksheet
    Dim nRow As Integer
 
    Set objMail = Application.ActiveExplorer.Selection(1)
 
    'Create a new excel worksheet
    Set objExcelApp = CreateObject("Excel.Application")
    Set objExcelWorkbook = objExcelApp.Workbooks.Add
    Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
 
    'Fill in the predefined values
    With objExcelWorksheet
         .Cells.Font.Name = "Cambria"
         .Cells(1, 1) = "Voting Results for Email:"
         .Cells(1, 2) = Chr(34) & objMail.Subject & Chr(34)
         .Cells(3, 1) = "Voting Options"
         .Cells(3, 2) = "Voting Counts"
    End With
 
    Set objVoteDictionary = CreateObject("Scripting.Dictionary")
    'get the default voting options
    varVotingOptions = Split(objMail.VotingOptions, ";")
    'Add the voting responses to the dictionary
    For Each varVotingOption In varVotingOptions
        objVoteDictionary.Add varVotingOption, 0
    Next
    'Add a custom voting response - "No Reply"
    objVoteDictionary.Add "No Reply", 0
 
    'Process the all voting responses
    For Each objRecipient In objMail.Recipients
        If objRecipient.TrackingStatus = olTrackingReplied Then
           If objVoteDictionary.Exists(objRecipient.AutoResponse) Then
              objVoteDictionary.Item(objRecipient.AutoResponse) = objVoteDictionary.Item(objRecipient.AutoResponse) + 1
           Else
              objVoteDictionary.Add objRecipient.AutoResponse, 1
           End If
        Else
           objVoteDictionary.Item("No Reply") = objVoteDictionary.Item("No Reply") + 1
        End If
    Next
 
    'Get the voting options and vote counts
    varVotingOptions = objVoteDictionary.Keys
    varVotingCounts = objVoteDictionary.Items
 
    'Fill in the values in specific cells
    nRow = 4
    For i = LBound(varVotingOptions) To UBound(varVotingOptions)
        With objExcelWorksheet
             .Cells(nRow, 1) = varVotingOptions(i)
             .Cells(nRow, 2) = varVotingCounts(i)
        End With
        nRow = nRow + 1
    Next
 
    'Save the new Excel file
    objExcelWorksheet.Columns("A:B").AutoFit
    strExcelFile = "E:\Voting Results " & Format(Now, "YYYY-MM-DD hh-mm-ss") & ".xlsx"
    objExcelWorkbook.Close True, strExcelFile

    MsgBox "Complete!", vbExclamation
End Sub

Codice VBA: esporta le statistiche di voto da un'e-mail di Outlook a un foglio di lavoro Excel

  1. Successivamente, per un comodo accesso, è meglio aggiungere la nuova macro alla barra degli strumenti di accesso rapido.
  2. Alla fine, puoi provare.
  • Innanzitutto, seleziona un'e-mail di origine che contenga i pulsanti di voto.
  • Quindi fare clic sul pulsante macro nella barra di accesso rapido.
  • Al termine dell'esecuzione di questa macro, è possibile passare alla cartella locale predefinita, in cui verrà visualizzata una nuova cartella di lavoro di Excel.
  • Apri questa cartella di lavoro di Excel. Ora vedrai le statistiche di voto, mostrate come l'immagine qui sotto:Statistiche di voto esportate

Nessuno può evitare completamente gli errori di Outlook

Sebbene Outlook sia dotato di una varietà di funzionalità, non esiste una funzionalità di questo tipo per aiutarci a evitare errori di Outlook. Tutti i tipi di fattori possono causare errori di Outlook. Ad esempio, se esci spesso da Outlook in modo improprio, è probabile che tu ne risenta Corruzione PST. In uno scenario del genere, non hai altra scelta che utilizzare alcuni potenti strumenti per salvare il tuo file PST, come DataNumen Outlook Repair. Ha guadagnato molti complimenti grazie al suo alto tasso di recupero.

Introduzione dell'autore:

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

Condividi ora:

I commenti sono chiusi.