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

VBA Outlook Discussion :

Image qui ne s'affiche pas dans un mail Outlook


Sujet :

VBA Outlook

  1. #1
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2019
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2019
    Messages : 133
    Points : 79
    Points
    79
    Par défaut Image qui ne s'affiche pas dans un mail Outlook
    Bonjour,

    J'envoie un mail Outlook avec le VBA. Et ce mail contient un graphique converti en image .png
    Le problème c'est que cette image est bien visible aux internes de la société, mais invisible chez les autres collaborateurs externes.

    Ci dessous le code que j'utilise:

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
     
    Sub createJpg(Namesheet As String, nameRange As String, nameFile As String)
        ThisWorkbook.Activate
        Worksheets(Namesheet).Activate
        Set Plage = ThisWorkbook.Worksheets(Namesheet).Range(nameRange)
        Plage.CopyPicture
        With ThisWorkbook.Worksheets(Namesheet).ChartObjects.Add(Plage.Left, Plage.Top, Plage.Width, Plage.Height)
            .Activate
            .Chart.Paste
            .Chart.Export Environ$("TEMP") & "\" & nameFile & ".png", "PNG"
        End With
        Worksheets(Namesheet).ChartObjects(Worksheets(Namesheet).ChartObjects.Count).Delete
    Set Plage = Nothing
    End Sub
     
     
    Sub EnvoiSTAT()
     
    Application.ScreenUpdating = False
     
        Dim OutApp As Object
        Dim OutMail As Object
        Dim strbody As String
        Dim olFormatHTML As String
     
     
                Set OutApp = CreateObject("Outlook.Application")
                OutApp.Session.Logon
     
                Set OutMail = OutApp.CreateItem(0)
                 strbody = Sheets("Options").Range("C7")
                On Error Resume Next
                    With OutMail
                        .To = Sheets("Options").Range("C4")
                        .CC = Sheets("Options").Range("C5")
                        .BCC = ""
                        .Subject = Sheets("Options").Range("C7")
                        .BodyFormat = olFormatHTML
                      .HTMLBody = Sheets("Options").Range("C9") & "<br>"
                      <BR>Cordialement"
                        '.Display 'Pour afficher en cas de vérif
     
                        Call createJpg("Evolution", "B4:H51", "DashboardFile")            
     
                        TempFilePath = Environ$("TEMP") & "\"
                .Attachments.Add TempFilePath & "DashboardFile.png", olByValue, 0
     
     
                .HTMLBody = .HTMLBody _
                    & "<img src='cid:DashboardFile.png'" _
                    & "<br>" 
     
     
                        .Display
     
                    End With
                        On Error GoTo 0
     
                    Set OutMail = Nothing
                    Set OutApp = Nothing
     
     
    End Sub
    Pour faire simple, l'image est invisible aussi quand je l'envoie sur mon gmail. Pourriez-vous me donner un coup de main sur ce sujet svp ?

    Cdt;

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

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    est ce que en externe tu vois le tableau mais en pièce jointe ?

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

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Cela dépend de la messagerie.

    essaye comme cela

    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
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    Sub NewMessage_With_Embedded_Dmitry()
        Dim olApp As Outlook.Application
        If Application.Name = "Outlook" Then
            Set olApp = Application
        Else
            Set olApp = CreateObject("outlook.application")
        End If
        Set NS = olApp.Session
     
        Set objOutlookMsg = olApp.CreateItem(olMailItem)
     
        Set objOutlookRecip = objOutlookMsg.Recipients.add("test@toto.com")
        objOutlookRecip.Type = olTo
        objOutlookMsg.Subject = "test"
     
        ' add graphic as attachment to Outlook message
        Set colAttach = objOutlookMsg.Attachments
        Set l_Attach = colAttach.add("C:\Users\Public\Pictures\pouce.jpg")
        l_Attach.propertyAccessor.SetProperty "http://schemas.microsoft.com/mapi/proptag/0x370E001F", "image/jpeg"
        'Change From 0x370eE001E
        l_Attach.propertyAccessor.SetProperty "http://schemas.microsoft.com/mapi/proptag/0x3712001F", "myident"
        'Changed from 0x3712001E
        'HideAttachments
        objOutlookMsg.propertyAccessor.SetProperty "http://schemas.microsoft.com/mapi/id/{00062008-0000-0000-C000-000000000046}/8514000B", True
        'Set body format to HTML
        objOutlookMsg.BodyFormat = olFormatHTML
        objOutlookMsg.HTMLBody = "<html><p>This is a picture.</p>" & _
                "<img src='cid:myident' >"
     
        objOutlookMsg.Save
        objOutlookMsg.Display
        'objOutlookMsg.Send
    End Sub

  4. #4
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2019
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2019
    Messages : 133
    Points : 79
    Points
    79
    Par défaut
    Oui l'image s'affiche en pièce jointe.
    Merci pour la proposition, même si je l'ai pas encore testé. L'idéal pour moi est de résoudre le problème avec le code que j'ai utilisé. Y-a t'il une proposition pour cela ?

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

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Tu mets les 2 codes dans un mixeur !
    L important c est la partie ...setproperty

  6. #6
    Membre régulier
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Avril 2019
    Messages
    133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2019
    Messages : 133
    Points : 79
    Points
    79
    Par défaut
    J'ai combiné les deux codes et ça marche comme sur des roulettes. Merci beaucoup !!

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

Discussions similaires

  1. Images qui ne s'affichent pas dans OUTLOOK 2016
    Par VieuxGeek dans le forum Outlook
    Réponses: 2
    Dernier message: 24/08/2017, 21h28
  2. [HTML 5] Background-image qui ne s'affiche pas dans les navigateurs
    Par patnour dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 01/06/2015, 14h56
  3. [AC-2003] Image qui ne s'affiche pas dans un état
    Par OtObOx dans le forum IHM
    Réponses: 4
    Dernier message: 30/05/2011, 08h09
  4. Image qui ne s'affiche pas dans un mail
    Par wolf001 dans le forum Débuter
    Réponses: 1
    Dernier message: 20/06/2009, 22h44
  5. Réponses: 15
    Dernier message: 23/01/2007, 15h27

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