Corps de message

Le
Pascal
Bonjour
Comment envoyer un fichier Word en corps de message via XL sans utiliser
MSG.Body
Merci
Pascal





Antivirus avast! : message Sortant sain.
Base de donnees virale (VPS) : 000724-1, 16/03/2007
Analyse le : 17/03/2007 09:07:34
avast! - copyright (c) 1988-2007 ALWIL Software.
http://www.avast.com
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Anacoluthe
Le #1585611
Bonjour !

'Pascal' nous a écrit ...
Comment envoyer un fichier Word en corps de message via XL sans utiliser
MSG.Body


Body vous est interdit ? Nobody ?
Si vous preniez un peu le temps d'expliquer ce que vous cherchez ? :-) ))))

Vous mettez du Word (quelle version ?) de l'Excel XL à moins que ce soit OL
de l'email (texte brut, enrichi ou html?) et un zeste de VBA : pas très
digeste pour l'instant, vous ne trouvez pas ?

Anacoluthe
« Je ne cherche pas à connaître les réponses,
je cherche à comprendre les questions. »
- CONFUCIUS

Pascal
Le #1585608
Je m'esplique,
A partir d'XL 2003 par vba, j'envoie des emails via Microsoft Outlook avec
pièces jointes identiques au format Word 2003.
Ce que je veux c'est par VBA sans utiliser msg.body, faire référence à un
fichier pour que celui ci soit enoyer dans le corps du message.
La simple raison est que cette lettre est assez longue.
Voici mon code dans VBA EXCEL 2003

Sub ole()
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"
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
Sujet = ActiveCell.Offset(0, 14).Value
Corps = "J'ai pas trouvé"
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)
With .Item
.Recipients.Add strRecipient
End With
Msg.To = Email
Msg.Subject = Sujet
Msg.Body = Corps
Msg.Attachments.Add Source:="C:TotoToto1.doc"
Msg.Send
Set olapp = Nothing
ActiveCell.Offset(1, 0).Select ' Client suivant
Loop
Set oApp = Nothing
MsgBox "Message envoyé"
End Sub

Je pensais donc que Corps = C:Totomalettre
Mais cela ne marche pas
"Anacoluthe" %
Bonjour !

'Pascal' nous a écrit ...
Comment envoyer un fichier Word en corps de message via XL sans utiliser
MSG.Body


Body vous est interdit ? Nobody ?
Si vous preniez un peu le temps d'expliquer ce que vous cherchez ?
:-) ))))

Vous mettez du Word (quelle version ?) de l'Excel XL à moins que ce soit
OL
de l'email (texte brut, enrichi ou html?) et un zeste de VBA : pas très
digeste pour l'instant, vous ne trouvez pas ?

Anacoluthe
« Je ne cherche pas à connaître les réponses,
je cherche à comprendre les questions. »
- CONFUCIUS


---
Antivirus avast! : message Entrant sain.
Base de donnees virale (VPS) : 000724-1, 16/03/2007
Analyse le : 17/03/2007 14:45:28
avast! - copyright (c) 1988-2007 ALWIL Software.
http://www.avast.com








---
Antivirus avast! : message Sortant sain.
Base de donnees virale (VPS) : 000724-1, 16/03/2007
Analyse le : 17/03/2007 14:52:23
avast! - copyright (c) 1988-2007 ALWIL Software.
http://www.avast.com


R1
Le #1585607
Pascal wrote:

Je m'esplique,
A partir d'XL 2003 par vba, j'envoie des emails via Microsoft Outlook
avec pièces jointes identiques au format Word 2003.
Ce que je veux c'est par VBA sans utiliser msg.body, faire référence à un
fichier pour que celui ci soit enoyer dans le corps du message.
La simple raison est que cette lettre est assez longue.


Le but est donc de mettre en contenu du mail ce qui est dans le document
Word, au lieu de mettre ce document en PJ. C'est bien celà?
Ne faudrait-il pas regarder du côté du logiciel d'envoi des messages comment
il traite les PJ Word?
Perso, je ne vois pas l'argument 'lettre assez longue'.

R1

Anacoluthe
Le #1585606
Bonjour !

'Pascal' nous a écrit ...
Je m'esplique,
Set doc = oApp.Documents.Open(nf)
'--

Sujet = ActiveCell.Offset(0, 14).Value
Corps = "J'ai pas trouvé"


Essayez :
Corps = Doc.Content.Text

Pas sûr que ça vous convienne mais c'est le sens de votre macro actuelle
et ça vous fera probablement avancer ;-)

Anacoluthe
« Il suivait son idée. C’était une idée fixe
et il était surpris de ne pas avancer »
- Jacques PREVERT

Publicité
Poster une réponse
Anonyme