VBA Envoi de mail depuis Word

fred014

Habitué
bonjour,

voilà je voudrais savoir s'il est possible avec un code en vba d'envoyer un document word par microsoft outlook
sans avoir a creer le message et de faire joindre un document .
sachant que le document est destiné pour la même personne.
du style je rempli le doc word et apres le clic sur un bouton pour que celui ci soit envoyer à cette personne.

merci d avance
 

Johan_et_Pirlouit

Grand Maître
Je ne saurais pas répondre à ta question, mais juste : change le titre de ton sujet.... C'est plutôt "[VBA] Envoi de mail depuis Word" ou un truc du genre.. Sinon, on risque de trop vite croire que c'est un simple pb MS Outlook, donc pour la cat' Logiciels ;)..

:merci:
 

fred014

Habitué
c'est encore moi , j'ai trouver ceci pour excel
[cpp]
sub envoimail()
worbooks("calsseur 1").sendmail recipients:="tartem.pion@mimi.com", _
subject:="test envoi classeur", _
returnreceipt:=true
end sub
[/cpp]

seulement sa utilise outlook express et non microsoft outlook et je n'arrive pas à l'utliser avec word.

merci d avance
 

fred014

Habitué
bon j'ai réussi a faire sa sauf que le message par bien mais je n arrive pas a joindre le fichier
[cpp]
Sub envoi_mail()
Dim app As Outlook.Application
Dim Pieces As Variant
Dim Colonne As Integer
Dim Fichier As String
Dim email As Object

Application.StatusBar = "création d'un message outlook..."
Set app = CreateObject("outlook.application")
Set email = app.CreateItem(olMailItem)
email.To = "mimi@quelquechose.fr"
email.Subject = "essai"
email.Body = "veuillez trouver ci-joint mon fichier"
email.Send
Set email = Nothing

Application.StatusBar = "pièces jointes"
Set Pieces = Attachments

Application.StatusBar = "affichage du message outlook"
Application.StatusBar = "prêt"
Message.Display

End Sub
[/cpp]
si quelqu un peu m aider

merci
 

Johan_et_Pirlouit

Grand Maître
seulement sa utilise outlook express et non microsoft outlook
Normal : Outlook Express doit être ton client "par défaut".. Pourtant, à l'installation, MS Outlook t'a demandé si tu voulais que lui le devienne à sa place et tu as peut-être répondu "non".

Dans MS Outlook, c'est ici : menu Outils -> Options -> onglet Autre -> rubrique Général -> cocher la case Définir Outlook comme le programme par défaut pour la messagerie, les contacts, le calendrier.

MS Outlook devrait alors se lancer par défaut.. Tu peux aussi vérifier si c'est bien pris en compte en cliquant sur un lien "mailto" depuis n'importe quelle page Web qui contient une adresse mail..


EDIT : bon bah, grillaid :ange:..

:merci:
 

fred014

Habitué
en fait ce petit programme est destiné pour mon boulot et on utilise MS outlook par defaut .donc mon message arrive bien a la personne designer mais il n y a pas la piece jointe.
en fait je crois que c'est attachments qui ne fonctionne pas .

si on pouvait m eclairer merci
 

fred014

Habitué
bon je n y arrive vraiment pas voici ou j en suis
[cpp]
Sub envoi_mail()
Dim app As Outlook.Application
Dim myattachments As Variant
Dim email As Object

Application.StatusBar = "création d'un message outlook..."
Set app = CreateObject("outlook.application")
Set email = app.CreateItem(olMailItem)
email.To = "mimi@machin.fr"
email.Subject = "essai"
email.Body = "veuillez trouver ci-joint mon fichier joint"
myattachments = ("C:documents and settings\administrateur\bureau\classeur1.xls")
email.Send
Set email = Nothing

End Sub
[/cpp]
donc le message par bien vers le destinataire mais sans la pièce jointe je desespère vraiment

merci
 

fred014

Habitué
oui je sais bien mais la je coince vraiment.
j ai bo chercher mais ......
pourtant je suis sur que la solution est simple
 

paga

Nouveau membre
Voici une solution qui marche :

Dim Destinataire As String
Dim Object As String
Destinataire ="monpot@mesamis.com"
Objet ="monObjet"
ActiveWorkbook.SendMail Recipients:=Destinataire, Subject:=Objet

A+
 

fred014

Habitué
voilà la solution pour envoyer un email avec MS outlook et non outlook express
[cpp]
Dim outlapp2 as New outlook.application
Dim outmail2 as Mailitem

Set outlapp2 = New outlook.application
Set outmail2 = outlapp2.createitem(olmailitem)

with outmail2

.to = "adresse ou liste de distribution"
.subject = "sujet du message"
.body = "corps du message"
.attachments.add"\\chemin\fichier.ext"
.display
.send

end with
[/cpp]

mettez ce code derriere un bouton envoyer email et le tour est jouer

salut a tous

 

nayaphykit

Nouveau membre
bonjour,

je travaille sous excel/vba et je souhaite envoyer une piece jointe depuis mon code d'excel via outlook. votre cas est depuis word, pourriez vous m'aider a l'adapter à excel s'il vous plait. je suis stagiaire et je ne maitrise pas vba/excel

merci d'avance
Naya
 

kiki29

Habitué
As-tu simplement essayé le code donné ?
Il est bien possible que tu n'aies rien à changer
sinon
 

nayaphykit

Nouveau membre
oui j'ai essayé le code et ca ne fonctionne pas, j'ai le message suivant : "type defini par l'utilisateur non defini" sur la 1ere ligne : Dim outlapp2 As New Outlook.Application
 
Vous devez vous inscrire ou vous connecter pour répondre ici.
Derniers messages publiés
Statistiques globales
Discussions
730 079
Messages
6 716 715
Membres
1 586 247
Dernier membre
MrAzgarIII
Partager cette page
Haut