J'ai lu cette discussion et j'ai le même problème.

J'utilise les chartobjects d'excel pour exporter mon range dans un fichier.

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
'@PARAM {Range} Range de cellule que l'on souhaite exporter
'@PARAM {String} Fichier de destination pour l'export
'@RETURN {Boolean}
Function SaveRngAsJPG(rng As Range, tempfile As String) As Boolean
  Dim chtObj As ChartObject
  On Error GoTo err
  With ActiveSheet
    .Activate
    Set chtObj = .ChartObjects.Add(9, 9.75, rng.Width, rng.Height)
    chtObj.Name = "Météo"
    ActiveSheet.Shapes("Météo").Line.Visible = msoFalse
    Selection.Locked = msoFalse
    chtObj.Width = rng.Width
    chtObj.Height = rng.Height
    rng.CopyPicture
    ActiveSheet.ChartObjects("Météo").Activate
    ActiveChart.Paste
    ActiveChart.export FileName:=tempfile, FilterName:="jpg"
    chtObj.Delete
  End With
SaveRngAsJPG = True
On Error GoTo 0
Exit Function
err:
  SaveRngAsJPG = False
  MsgBox "Erreur dans la création de l'objet ""Chart"" : " & vbLf & err.Number & vbLf & err.Description & err.source
  On Error GoTo 0
End Function
J'obtiens donc un fichier image "Applicatif.jpg" qui contient bien ce que je souhaite.


Pour effectuer l'envoi j'utilise cette fonction d'envoi :
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
64
'Envoyer un fichier dans le Body d'un email en HTML
'@PARAM {String} Fichier à transmettre
'@RETURN {Boolean}
Function sendmail(file) As Boolean
Dim A As String, Cc As String, objet As String
Dim s As Object, db As Object, docMail As Object, body As Object
Dim Stream As Object, Header As Object, mimeBody As Object
  On Error GoTo err
  Application.ScreenUpdating = False
  A = "gbranchard-ext@girc.agirc-arrco.fr"
  Cc = ""
  objet = "Compte rendu d'exploitation au " & Format(Date, "DD/MM/YYYY")
 
  Set s = CreateObject("Notes.NotesSession")
  Set db = s.GetDatabase("", "")
  Set docMail = db.CreateDocument
  Set body = docMail.CreateMIMEEntity
  Set Header = body.CreateHeader("MIME-Version")
  Set Stream = s.CreateStream
  Set Header = body.CreateHeader("Content-Type")
  Set mimeBody = body.CreateChildEntity()
 
  If Not db.IsOpen Then db.OPENMAIL
  s.ConvertMIME = False
  Call Header.SetHeaderValAndParams("multipart/related;boundary=""= NextPart_=""")
  Call Header.SetHeaderVal("1.0")
  Application.ScreenUpdating = True
'Création du mail
  With docMail
    .Form = "Memo"
    .SendTo = A
    .CopyTo = Cc
    .Subject = objet
    .From = s.CommonUserName
    .ReplyTo = s.CommonUserName
    '.Principal = from_address
  End With
  Call Stream.WriteText(Html)
  Call Stream.WriteText("<img src='cid:" & file & "' border=0 hspace=0 vspace=0>")
  Call mimeBody.SetContentFromText(Stream, "text/html;charset=UTF-8", ENC_BASE64)
  'Call stream.WriteText( _
  '  "<html><center>" & _
  '  "Ce mail a été généré par un automate, merci de ne pas répondre à ce mail. " & _
  '  "Pour nous contacter, merci d'utiliser le groupe " & _
  '  "<a href='mailto:Pupitreurs?subject=Météo'>Pupitreurs</a>" & _
  '  "<br>" & _
  '  "<img src='cid:" & file & "' border=0 hspace=0 vspace=0>" & _
  '  "</center></html>")
  'Call body.SetContentFromText(stream, "text/html;charset=iso-8859-1", ENC_IDENTITY_8BIT)
  Call Stream.Close
  Call docMail.send(False)
  Set docMail = Nothing
  Set body = Nothing
  Set Stream = Nothing
  On Error GoTo 0
  sendmail = True
 
err:
    sendmail = False
  On Error GoTo 0
  Set docMail = Nothing
  Set body = Nothing
  Set Stream = Nothing
End Function
Le mieux que j'arrive à faire me donne ça :
Nom : Courrier.png
Affichages : 475
Taille : 3,3 Ko

Comme Lotus (8.5) est installé, je dispose des références dans VBE, je creuse de ce côté là


Merci d'avance pour votre aide