Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
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
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
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
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" a écrit dans le message de news: %
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
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" <nopub_anacoluthe@Ouanadoo.fr> a écrit dans le message de news:
%23xRtvGJaHHA.5020@TK2MSFTNGP05.phx.gbl...
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
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" a écrit dans le message de news: %
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
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
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'.
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
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
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