Comment exporter vos tâches outlook vers excel avec vba

Si oui ou non vous êtes un fan de Microsoft, une bonne chose qui peut être dit sur les produits MS Office, au moins, est de savoir comment il est facile d`intégrer chacun d`entre eux les uns aux autres.

Video: Excel Outlook VBA: List Outlook Email Info In Excel

Il suffit de penser à la puissance qui vient d`avoir des e-mails entrants générant automatiquement de nouvelles tâches ou de nouveaux rendez-vous, ou ayant une tâche terminée automatiquement par courrier électronique votre patron avec le rapport d`état mis à jour de la description des tâches.

Si vous le faites correctement, vous pouvez réduire la charge de travail de votre journée par un bateau plein tout en automatisant les choses d`une manière intelligente et efficace.

Si vous suivez mon écriture ici, alors vous savez que dans le passé, j`ai couvert des choses comme l`intégration navigateur web propose dans Excel, automatiquement maximiser les fenêtres d`application, ou l`automatisation mises à jour de tableau dans Excel.Comment faire votre propre navigateur Internet de base l`utilisation de VBAComment faire votre propre navigateur Internet de base l`utilisation de VBALorsque vous arrêtez vraiment penser, un navigateur Internet dans sa forme la plus simple est pas vraiment une application impressionnante. Je veux dire, oui, l`Internet est incroyable par rapport aux normes qui que ce soit. Le concept de lien ...Lire la suite

Eh bien, dans cet article, je vais couvrir une autre tâche d`automatisation - en fait l`un que je l`ai souvent utilisé plus récemment - mettre à jour automatiquement une feuille de calcul Excel avec toutes vos tâches Outlook actifs restants à la fin de la journée.

Alimentation tâches Outlook Pour une feuille de calcul Excel

Il y a beaucoup de raisons pour lesquelles vous voudrez peut-être le faire. Peut-être que vous voulez suivre vos tâches inachevées sur une base quotidienne dans un format que vous pouvez rapidement hors mail à quelqu`un (pas si facile à faire avec des tâches Outlook). Ou peut-être que ça va faire partie d`un rapport plus grand que vous allez taper dans Word.

Quel que soit le cas, la capacité de capturer et de sortie inachevés informations de tâches Outlook est une chose utile.

Pour cet exemple, voici mon exemple de liste de tâches Outlook avec 5 autres tâches que je n`ai toujours pas encore terminé.

tâches de perspectives d`exportation vers Excel

Tout ce que nous allons faire ici, est en VBA. Dans Outlook, vous obtenez à l`éditeur VBA en cliquant sur «Outils", puis "macro», Puis en choisissant la «Visual Basic Editor« .

tâches de perspectives d`exportation à csv

Le code que vous allez utiliser pour capturer votre liste de tâches et l`exporter vers Excel est en fait pas tout à fait aussi compliqué que vous pourriez penser. La première étape consiste à brancher sur les deux objets Outlook et les objets Excel en créant les définitions de variables nécessaires. Puis, en utilisant l`objet de classeur que vous avez créé, commencez par créer l`en-tête dans votre feuille de calcul.

Dim strReport Comme StringDim olnameSpace Comme Outlook.NameSpaceDim taskFolder Comme les tâches Outlook.MAPIFolderDim Comme Outlook.ItemsDim TSK Comme Outlook.TaskItemDim objExcel As New Excel.ApplicationDim exWb Comme Excel.WorkbookDim SHT Comme Excel.WorksheetDim strMyName Comme StringDim x As IntegerDim y As IntegerSet exWb = objExcel.Workbooks.Open ("c: temp MyActiveTasks.xls") `ExWb.Sheets (strMyName) .Delete` exWb.Sheets.Add (strMyName) Set olnameSpace = Application.GetNamespace ("MAPI") Set taskFolder = olnameSpace.GetDefaultFolder (olFolderTasks) Définir les tâches = taskFolder.ItemsstrReport = ""« Créer HeaderexWb.Sheets ("sheet1") .Cells (1, 1) = "Assujettir"(exWb.Sheets"sheet1") .Cells (1, 2) = "Date d`échéance"(exWb.Sheets"sheet1") .Cells (1, 3) = "pour cent complet"(exWb.Sheets"sheet1") .Cells (1, 4) = "Statut"

Alors, voici ce que la nouvelle feuille de calcul ressemble. Votre application Outlook vient de créer un nouveau fichier Excel appelé « MyActiveTasks.xls » dans le répertoire C: temp, et a créé un en-tête pour les tâches que vous êtes sur le point d`insérer.

tâches de perspectives d`exportation à csv

Donc, maintenant il est temps d`extraire vos tâches et de les insérer dans le fichier Excel. J`utilise une variable « y » à partir de deux afin de vous assurer que la première ligne qui est utilisée est pas la première, parce que je ne veux pas écraser l`en-tête.

Video: Excel Outlook VBA: List Outlook Tasks in Excel

y = 2Car x = 1 à tasks.CountSet tsk = tasks.Item (x) `= strReport strReport + + tsk.Subject "- "« Remplissez DataIf Pas tsk.Complete ThenexWb.Sheets ("Ryan") .Cells (y, 1) = tsk.SubjectexWb.Sheets ("Ryan") .Cells (y, 2) = tsk.DueDateexWb.Sheets ("Ryan") .Cells (y, 3) = tsk.PercentCompleteexWb.Sheets ("Ryan") .Cells (y, 4) = tsk.Statusy = y + x 1End IfNext

Qu`est-ce que ce script est effectue une recherche dans votre liste complète des éléments de tâche dans Outlook, vérifie si l`élément est encore terminée, et si ce n`est pas, il insère ces informations de tâche dans 4 cellules de la feuille de calcul. Si vous voulez, vous pouvez insérer plus d`informations. Il suffit d`explorer les informations tâche est disponible en tapant « tss. », Puis en parcourant la liste des propriétés qui apparaissent.

Maintenant, voici ce que la feuille ressemble.

tâches de perspectives d`exportation à csv

Être un peu perfectionniste, il y a encore un problème. Remarquez comment la colonne A clipser le dernier sujet de la tâche? » Je ne l`aime pas. Donc, nous allons ajouter un peu plus de code pour ajuster automatiquement toutes les colonnes dans le tableau Excel.

« Autofit toutes les colonnes widthsFor Chaque SHT Dans ActiveWorkbook.Worksheetssht.Columns ("UNE") (.EntireColumn.AutoFitsht.Columns"B") (.EntireColumn.AutoFitsht.Columns"C") (.EntireColumn.AutoFitsht.Columns"ré") .EntireColumn.AutoFitNext shtexWb.SaveexWb.CloseSet exWb = Nothing

le sauvegarder et Fermer méthodes dans ces dernières lignes sauveront la feuille et le fermer afin qu`il ne reste pas verrouillé par l`application, sinon il serait difficile d`ouvrir le fichier Excel jusqu`à ce que vous avez fermé Outlook.

Alors, voici maintenant ce que la feuille de calcul fini ressemble.

tâches de perspectives d`exportation vers Excel

Lorsque vous définissez le script à exécuter? Eh bien, je l`ai mis à courir sur la « Application.Close () » événement, qui se déroule lorsque vous quittez Outlook à la fin de la journée. Cela rendra perspectives produit le rapport sur feuille de calcul Excel à la fin de la journée, tout seul.

Pouvez-vous penser à d`autres utilisations cool pour cette technique? Peut-être tirer automatiquement un e-mail avec la liste des tâches, ou les sortir dans un fichier HTML et FTPing à votre toile serveur?

Avec un peu de créativité, il est incroyable ce que vous pouvez tirer avec un peu d`automatisation de script. Partagez vos propres pensées et idées dans la section commentaires ci-dessous!

Shutterstock

Articles connexes