IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Ouvrir depuis excel un mail outlook (fichier .msg) [XL-2010]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Ingénieur Logistique
    Inscrit en
    Octobre 2013
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Logistique
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2013
    Messages : 104
    Par défaut Ouvrir depuis excel un mail outlook (fichier .msg)
    Bonjour à tous,

    j'aurais besoin de votre aide pour trouver comment ouvrir un fichier mail outlook .msg : j'ai besoin de l'ouvrir et non de le créer : en fait j'ai besoin d'envoyer certains fichiers excels à l'aide d'un message qui est quasi-toujours le même : l'idée est d'aller le chercher dans le disque dur de l'ouvrir de mettre le fichier excel en pièce-jointe l'envoi se faisant manuellement.

    Google est mon ami, mais vraisemblablement peu de personnes ouvre de .msg depuis un excel, d'où ma question.

    D'avance, un grand merci,


    Philippe

  2. #2
    Expert confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2013
    Messages
    3 609
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Alimentation

    Informations forums :
    Inscription : Mai 2013
    Messages : 3 609
    Par défaut
    Bonjour,

    Je pense que tu doives passer par RDO
    Voici un lien qui pourra t'informer un peu (en anglais...)

    Tu peux faire des recherches sur Redemption

  3. #3
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 093
    Billets dans le blog
    20
    Par défaut
    Salut,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    Sub Ouverture_msg(LeFichier As String)
    'ouvrir un .msg d'un dossier de l'explorateur
        Set myolapp = Outlook.Application
        OutlookExe = pathOutlook(Val(Application.version)) + "outlook.exe"
        shellcommande = """" & OutlookExe & """ /f """ & LeFichier & """"
        RetVal = Shell(shellcommande, 1)
        DoEvents
        Set myItem = myolapp.ActiveInspector.CurrentItem
    'ici on fait quelque chose avec l'email
        MsgBox "Sujet: " & myItem.subject & vbCr & "reçu le : " & myItem.ReceivedTime & vbCr & "A: " & myItem.To & vbCr & "Email Exp: " & myItem.SenderEmailAddress & vbCr & "PJ: " & myItem.Attachments.Count
     
        On Error Resume Next
    'fermeture de l'email .msg
        myItem.Close 0
        On Error GoTo 0
    End Sub
     
    Function pathOutlook(version As Integer)
        Dim objWSH As Object
        Set objWSH = CreateObject("WScript.Shell")
        pathOutlook = objWSH.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Office\" + CStr(version) + ".0\Common\InstallRoot\Path")
    End Function
    ou comme cela s'il sert de modèle
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
        Dim MyItem As Outlook.MailItem
     Set myolapp = Outlook.Application    
        Set MyItem = myolapp.CreateItemFromTemplate("D:\TEMP1\monMessage.msg")
        MyItem.Display
    Have a nice day. Oliv'
    Votre réponse est peut être dans mon blog !
    https://www.developpez.net/forums/blogs/191381-oliv-/

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur Logistique
    Inscrit en
    Octobre 2013
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Logistique
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2013
    Messages : 104
    Par défaut
    Merci à tous les deux de votre aide, j'essaierai ça quand j'aurais un peu plus de temps et je vous fait un retour.
    (Un autre plus gros projet sur le dos)

    Encore merci, bonne soirée,


    Philippe

    Bonjour,

    Alors j'ai pu essayé les deux possibilités proposées, mais cela ne fonctionne pas. En fait, c'est comme s'il ne reconnaissait pas l'objet outlook... VB me renvoit des erreurs de compilations...

    Est-ce qu'il y aurait une bibliothèque à ajouter préalablement ? Si oui, laquelle ? et comment l'ajoute-t-on ? Sinon comment fait-on ?

    Je vous remercie de votre aide,


    Philippe

  5. #5
    Expert confirmé
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 093
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 093
    Billets dans le blog
    20
    Par défaut
    Salut,
    oui soit tu ajoutes une référence à OUTLOOK (ce que j'avais présupposé)
    soit tu modifies ainsi

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Dim MyItem As object
     Set myolapp = createobject("Outlook.Application")   
        Set MyItem = myolapp.CreateItemFromTemplate("D:\TEMP1\monMessage.msg")
        MyItem.Display
    Have a nice day. Oliv'
    Votre réponse est peut être dans mon blog !
    https://www.developpez.net/forums/blogs/191381-oliv-/

  6. #6
    Membre confirmé
    Homme Profil pro
    Ingénieur Logistique
    Inscrit en
    Octobre 2013
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur Logistique
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2013
    Messages : 104
    Par défaut
    Chouette ça marche, merci beaucoup !

    Du coup, dans le suite de ce que je fais il faudrait que j'arrive à mettre en pièce jointe le fichier sur lequel je suis sous excel, comment faire ?

    Est-ce qu'il faut que je le sauvegarde et que j'aille le chercher comme un fichier autre ? Ou est-ce que je peux l'insérer directement ?
    En fait, la première option ne me plaît pas, puisqu'il faudrait que cette macro puisse être utilisée par d'autres personnes et le temps d'accès, pour un chemin commun à tous, sur le serveur est parfois très long...

    Donc si la solution permettant de mettre le fichier en PJ sans l'enregistrer est faisable, je suis preneur !

    Merci beaucoup,


    Philippe

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [OL-2010] Publipostage depuis excel puis mail auto avec pièces jointes différentes
    Par EzeckielRSA dans le forum Outlook
    Réponses: 3
    Dernier message: 30/06/2014, 16h01
  2. Envoi depuis excel de mail outlook
    Par Tsz78 dans le forum Excel
    Réponses: 1
    Dernier message: 03/10/2013, 16h17
  3. convertion mail outlook fichier txt
    Par davzell dans le forum VBScript
    Réponses: 0
    Dernier message: 25/11/2011, 10h29
  4. Formulaire envoyé complété depuis Excel par mail
    Par thomasdu40 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/10/2010, 23h38
  5. Envoi de mail depuis Excel 2003 via Outlook 2003
    Par SlySylvain dans le forum Excel
    Réponses: 2
    Dernier message: 19/04/2007, 09h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo