Exporter automatiquement mails Outlook vers Excel

Bonjour à tous,

Voici mon 1er poste sur ce forum

Je n'ai pas trouvé de solutions sur internet, me voici donc ici pour résoudre & comprendre mon soucis! Je vous explique:

Dans le cadre du recrutement de mon entreprise, nous recevons les candidatures via notre site internet qui nous envoie automatiquement un mail pour chaque candidature (imaginons que l'adresse mail du site internet est candidature@monsiteweb.com) . Ces mails contiennent différentes informations ("Nom" "Prénom" "Adresse mail" etc.) en format texte ainsi qu'une pièce jointe en Word ou PDF (le C.V.).

N'ayant pas accès au site web, je me demandais si il était possible de faire une manipulation pour que Outlook exporte automatiquement ces données dans un fichier Excel, c'est-à-dire qu'à chaque acte de candidature sur notre site web Outlook crée (suite à réception du mail candidature@monsiteweb.com) une nouvelle ligne sur un tableau excel contenant les candidatures précédemment reçues par ce dernier.

Pour l'instant j'ai seulement réussi à importer sur Excel les candidatures à un instant T.

Merci de votre aide et de votre temps.

En espérant avoir été suffisamment clair.

Problème toujours pas résolu

Bonjour Piupiu,

Une telle exportation semble un peu du bricolage. As-tu le moindre contrôle sur le site internet en lui-même?

En effet au lieu de faire

site web -> outlook -> excel, il pourrait être utile de faire :

site web -> excel, ou encore mieux:

site web -> base de donnée

Passer par Outlook sera sûrement complexe...

Bonjour piupiu

Félicitations (le premier post c'est un bon début)

Pour ce qui est de ton "problème" je pense qu'il est plus judicieux de prendre le problème dans l'autre sens...

C'est Excel qui vérifie qu'aucun nouvel mail n'existe, ET NON PAS Outlook qui envoie le(s) nouveau(x) mail(s) à Excel car

  1. dans un 1er temps Excel est beaucoup plus pratique et puissant (en VBA) qu'Outlook
  2. dans un 2eme temps puisque tu veux voir ces mails dans Excel c'est lorsque tu utilise Excel que tu le verras.

Par contre je ne dis pas que saurais t'aider, je connais mal les connexions avec Outlook !

Merci pour votre réactivité !

Malheureusement d3d9x, je n'ai aucun accès au site internet. Je ne suis même pas certain que le site internet détienne des données sur son serveur... Je pense que le site nous envoie simplement par mail chaque acte de candidatures avec les informations rattachées et ne garde aucune trace (et tant mieux sinon cela serait pas terrible au niveau "conservation des données" ).

Je suis donc obligé de passer par Outlook car c'est uniquement par ces mails que je peux extraire des données..

En fait Andrea73, nous recevons une vingtaine de candidature spontanées par jour: j'ai juste besoin d'avoir une formule Excel qui puisse ajouter à chaque nouveau mail une nouvelle ligne !

EDIT: Donc oui pas de soucis si je vois ces mails dans Excel uniquement lorsque je l'utilise !

Le soucis aujourd'hui c'est le problème de lisibilité via Outlook & la boite de réception rapidement pleine malgré l'archivage, Excel semble le bon compromis.

(re)

Piupiu a écrit :

Pour l'instant j'ai seulement réussi à importer sur Excel les candidatures à un instant T.

manuellement ou avec VBA ?

Es-tu certain de pouvoir dire que le mail reçu est bien une candidature ? un objet toujours identique (par exemple) ?

andrea73 a écrit :

(re)

Piupiu a écrit :

Pour l'instant j'ai seulement réussi à importer sur Excel les candidatures à un instant T.

manuellement ou avec VBA ?

Es-tu certain de pouvoir dire que le mail reçu est bien une candidature ? un objet toujours identique (par exemple) ?

Manuellement, tout simplement je suis allé dans Outlook et j'ai cliqué dans l'onglet importer/exporter et j'ai demandé de m'extraire uniquement les mails de "candidature@monsiteweb.com".

Pour précision, ces mails sont toujours:

  • du même auteur: "candidature@monsiteweb.com"
  • avec le même objet "Recrutement"
  • avec les mêmes demandes de renseignement exemple: Prénom: xxx Nom: xxx Adresse mail: xxx Veuillez motiver votre candidature: xxx etc.

Une aide est toujours la bienvenue !

Une question est toujours sans réponse, une base de donnée est-elle acceptable? (Access, mySQL etc...)

d3d9x a écrit :

Une question est toujours sans réponse, une base de donnée est-elle acceptable? (Access, mySQL etc...)

La réponse est oui ! Je détiens une base de données au format .pst

Code pompé d'internet A EDITER pour les répertoires.

Dans outlook -> Alt + F11 -> "ThisOutlookSession" -> Coller -> Ctrl + S -> Redémarrer

ATTENTION, pour le moment ce code ne fait QUE stocker les pièces jointes dans "C:\Temp\", et n'écrit RIEN dans aucun fichier Excel. Pour Excel, il faudra connaître la syntaxe exacte du contenue des mails, pour pouvoir extraire tes données.

ATTENTION, après avoir redémarré Outlook, essai d'exécuter manuellement le 'Private Sub Application_Startup(). Ce qui peut se passer, c'est que les macros ne soient pas activées, ou limitées en autorisation, auquel cas il faudra éditer la sécurité vis-à-vis des macros.

Private WithEvents Items As Outlook.Items
Private Sub Application_Startup()
  Dim olApp As Outlook.Application
  Dim objNS As Outlook.NameSpace
  Set olApp = Outlook.Application
  Set objNS = olApp.GetNamespace("MAPI")
  ' default local Inbox
  Set Items = objNS.GetDefaultFolder(olFolderInbox).Items
End Sub
Private Sub Items_ItemAdd(ByVal item As Object)

  On Error GoTo ErrorHandler
  Dim Msg As Outlook.MailItem
  If TypeName(item) = "MailItem" Then
    Set Msg = item

    If Msg.SenderEmailAddress = "candidature@monsiteweb.com" And Msg.Subject = "Recrutement" Then
        'ajouter le mail à la BDD
        saveAttachtoDisk (Msg)
        'CODE POUR ENVOYER LES DONNEES VERS EXCEL, DEPEND DE LA SYNTAXE DES MAILS
    End If
  End If
ProgramExit:
  Exit Sub
ErrorHandler:
  MsgBox Err.Number & " - " & Err.Description
  Resume ProgramExit
End Sub

Public Sub saveAttachtoDisk(itm As Outlook.MailItem)
Dim objAtt As Outlook.Attachment
Dim saveFolder As String
Dim dateFormat
dateFormat = Format(Now, "yyyy-mm-dd H-mm")
saveFolder = "C:\Temp\"
For Each objAtt In itm.Attachments
    objAtt.SaveAsFile saveFolder & "\" & dateFormat & objAtt.DisplayName
    Set objAtt = Nothing
Next
End Sub

Sources :

http://stackoverflow.com/questions/15531093/outlook-vba-code-to-save-attachments-to-a-folder-and-rename-them

http://stackoverflow.com/questions/11263483/how-do-i-trigger-a-macro-to-run-after-a-new-mail-is-received-in-outlook

Whaouuuuu je ne pensais pas demander un truc si incroyable que ca !

Merci pour la recherche, les sources, ton explication et le temps que tu auras dépensé pour ca !

Et merci plus globalement à tout les gens qui ont essayé de m'aider, c'est super ce forum!

Si j'ai un soucis par la suite, je vous tiens au courant bien évidemment

Bonne soirée !

Rechercher des sujets similaires à "exporter automatiquement mails outlook"