Comment exporter rapidement les statistiques de vote d'un e-mail Outlook vers une feuille de calcul Excel

Partage maintenant:

Si vous avez envoyé un e-mail contenant des boutons de vote, vous souhaiterez peut-être, une fois les réponses reçues, compiler et exporter les statistiques de vote vers un tableur Excel. Cet article vous explique comment procéder rapidement.

Outlook est si puissant qu'il offre même une fonctionnalité de "vote". Mon article précédent "Utilisation habile de MS Outlook pour voter« » nous a appris à l'utiliser efficacement. De plus, la plupart du temps, après avoir voté, vous souhaiterez peut-être exporter les statistiques de vote vers une feuille de calcul Excel pour diverses raisons, par exemple pour les imprimer. Or, Outlook ne prend pas en charge cette fonctionnalité par défaut. C'est pourquoi nous allons vous montrer comment y parvenir.

Exportez rapidement les statistiques de vote d'un e-mail Outlook vers une feuille de calcul Excel

Exporter les statistiques de vote dans un e-mail vers une feuille de calcul Excel

  1. Au tout début, lancez votre application Outlook.
  2. Ensuite, vous devez appuyer sur les touches "Alt + F11" dans la fenêtre principale d'Outlook.
  3. Dans la fenêtre « Microsoft Visual Basic pour Applications », activez la « Bibliothèque d’objets Microsoft Excel ». Cliquez sur « Outils » > « Référence ». Dans la boîte de dialogue qui s’affiche, cochez la case « Bibliothèque d’objets Microsoft Excel » et cliquez sur « OK ».
  4. Après cela, vous pouvez insérer un nouveau module ou en ouvrir un non utilisé.
  5. Ensuite, copiez et collez les codes VBA suivants dans ce module.
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

Code VBA - Exporter les statistiques de vote d'un e-mail Outlook vers une feuille de calcul Excel

  1. Après cela, pour un accès pratique, vous feriez mieux d'ajouter la nouvelle macro à la barre d'outils d'accès rapide.
  2. Finalement, vous pouvez essayer.
  • Tout d'abord, sélectionnez un e-mail source contenant des boutons de vote.
  • Cliquez ensuite sur le bouton macro dans la barre d'outils d'accès rapide.
  • Une fois l'exécution de cette macro terminée, vous pouvez accéder au dossier local prédéfini, dans lequel vous verrez un nouveau classeur Excel.
  • Ouvrez ce classeur Excel. Vous verrez maintenant les statistiques de vote, présentées comme l'image ci-dessous :Statistiques de vote exportées

Personne ne peut éviter complètement les erreurs Outlook

Bien qu'Outlook soit doté d'une variété de fonctionnalités, il n'existe aucune fonctionnalité de ce type pour nous aider à éviter les erreurs Outlook. Toutes sortes de facteurs peuvent provoquer des erreurs Outlook. Par exemple, si vous quittez souvent Outlook de manière incorrecte, vous risquez de souffrir Fichier PST corrompu. Dans un tel scénario, vous n'avez pas d'autre choix que d'utiliser des outils puissants pour sauver votre fichier PST, comme DataNumen Outlook Repair. Il a gagné beaucoup de félicitations en raison de son taux de récupération élevé.

Introduction de l'auteur:

Shirley Zhang est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris mdf corrompu et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com

Partage maintenant:

Les commentaires sont fermés.