Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA: créer un oleobject dans outlook

1 réponse
Avatar
Jean-Marc
Bonjour,

Je suis sous Excel et j'essais d'envoyer un email avec un objet d'insérer!

À la souris, ca reviens à cliquer sur:
Insertion
Objet
Créer à partir d'un fichier
Parcourir
OK

J'arrive à ajouter le fichier comme un fichier joint mais pas comme un objet
(j'entends pas là que mon tableau est dans le body de mon email et que si
l'utilisateur change une valeur, la feuille se remet à jour automatiquement!)

Voici le bout de code que j'ai:

'Create a new Workbook Containing 1 Sheet (left most) _
and sends as attachment.

Dim lig As Integer
Dim col As Integer
Dim ol As New Outlook.Application
Dim olmail As MailItem

Dim name As String
Dim emails As String
Dim Subject As String

emails = Range("I3")
Subject = Range("I4")
name = Application.ActiveWorkbook.FullName



Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)

With olmail
.Display '.Display Send
.BodyFormat = olFormatRichText
.Body = "Mon message"

.Attachments.Add name, olOLE, , _
"OLE Attachment" ' OLE attachment


.To = emails 'en B3 l'adresse destinataire
.Subject = Subject 'ici le sujet
'.HTMLBody = RangetoHTML(Msg) 'ici le texte de A7:G24


End With

1 réponse

Avatar
Pascal
J'ai eu le même soucis essayes ce code
Pascal


Sub ole()
'JB
Dim oApp As Word.Application, doc As Word.Document
Sheets("Env").Select
Range("B2").Select ' premier client
Do While Not IsEmpty(ActiveCell)
On Error Resume Next
nf = ThisWorkbook.Path & "Publi.doc" 'Choix du corps du mail
Set oApp = CreateObject("Word.Application")
oApp.Visible = True
Set doc = oApp.Documents.Open(nf)
If Err <> 0 Then
MsgBox "Le fichier publi.doc doit être dans " & ThisWorkbook.Path
Exit Sub
End If
On Error GoTo 0 ' Annule la gestion d'erreur
'--
Société = ActiveCell.Value
Email = ActiveCell.Offset(0, 8).Value
Corps = doc.Content.Text 'Récupére le doc choisi plus haut pour
l'insérer en corps de mail
'--
nom_doc = ThisWorkbook.Path & "" & Société & ".doc"
doc.SaveAs nom_doc
oApp.Quit
'------------------------ envoi par mail
Dim olapp As Outlook.Application
Dim Msg As MailItem
Set olapp = New Outlook.Application
Set Msg = olapp.CreateItem(olMailItem)
Msg.To = Email
Msg.Subject = Sujet
Msg.Body = Corps
Msg.Attachments.Add Source:="C:PascalTon doc.doc" 'Insertion de la
pièce jointe
Msg.Send
Set olapp = Nothing
ActiveCell.Offset(1, 0).Select ' Client suivant
Loop
Set oApp = Nothing
MsgBox "Message envoyé"

End Sub
"Jean-Marc" a écrit dans le message de
news:
Bonjour,

Je suis sous Excel et j'essais d'envoyer un email avec un objet d'insérer!

À la souris, ca reviens à cliquer sur:
Insertion
Objet
Créer à partir d'un fichier
Parcourir
OK

J'arrive à ajouter le fichier comme un fichier joint mais pas comme un
objet
(j'entends pas là que mon tableau est dans le body de mon email et que si
l'utilisateur change une valeur, la feuille se remet à jour
automatiquement!)

Voici le bout de code que j'ai:

'Create a new Workbook Containing 1 Sheet (left most) _
and sends as attachment.

Dim lig As Integer
Dim col As Integer
Dim ol As New Outlook.Application
Dim olmail As MailItem

Dim name As String
Dim emails As String
Dim Subject As String

emails = Range("I3")
Subject = Range("I4")
name = Application.ActiveWorkbook.FullName



Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)

With olmail
.Display '.Display Send
.BodyFormat = olFormatRichText
.Body = "Mon message"

.Attachments.Add name, olOLE, , _
"OLE Attachment" ' OLE attachment


.To = emails 'en B3 l'adresse destinataire
.Subject = Subject 'ici le sujet
'.HTMLBody = RangetoHTML(Msg) 'ici le texte de A7:G24


End With


---
Antivirus avast! : message Entrant sain.
Base de donnees virale (VPS) : 000726-1, 21/03/2007
Analyse le : 22/03/2007 09:03:55
avast! - copyright (c) 1988-2007 ALWIL Software.
http://www.avast.com








---
Antivirus avast! : message Sortant sain.
Base de donnees virale (VPS) : 000726-1, 21/03/2007
Analyse le : 22/03/2007 09:07:04
avast! - copyright (c) 1988-2007 ALWIL Software.
http://www.avast.com