Envoyer un mail en joignant le fichier sur lequel on travaille

Le
FinoPat
Bonjour,
j'ai un fichier excel avec un bouton qui lance un code vba.
Avec ce code je veux envoyer le fichier par mail

J'ai récupéré le code suivant qui fonctionne presque, j'ai une erreur :
"Le processus ne peut pas acceder au fichier car ce fichier est utilisé
par un autre processus"

Private Sub Envoi_Mail_Click()
Message = InputBox("Veuillez saisir le corps du message")

SendMailDirect _
Expediteur:="titi@dest.fr" _
, Destinataire:="toto@dest.fr" _
, copie:="" _
, sujet:="Mise à jour fichier affectation des pools IP et DHCP " _
, corps:="Voici le dernier fichier des pools IP et DHCP " & vbCrLf &
vbCrLf _
& "Commentaires:" & vbCrLf & vbCrLf _
& Message
End Sub

Sub SendMailDirect(Expediteur As String, Destinataire As String, copie As
String, sujet As String, corps As String)

Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")

iConf.Load -1 ' CDO Source Defaults
Set Flds = iConf.Fields
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing")
= 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver")
= "smtp.completel.net"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
.Update
End With

'Check out the Tips section if you want to change the .To and .TextBody
With iMsg
Set .Configuration = iConf
.To = Destinataire
.CC = copie
.BCC = ""
.From = Expediteur
.Subject = sujet
.TextBody = corps
.AddAttachment "Affectation pool IP" & ThisWorkbook.Name
' You can add any file you want with this line .AddAttachment
"C:/Test.txt"
.Send
End With

End Sub

Faut il procéder autrement ?
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
FinoPat
Le #19064151
Re bonjour,
j'ai trouvé cela:
ActiveWorkbook.SendMail Recipients:Þst(), Subject:="Mise à jour fichier
affectation des pools IP et DHCP"

seulement avec cela je n'arrive pas à modifier le corps du message ...
est ce que quelqu'un connaitrait la solution pour pouvoir combiner ces
deux façons de faire ?


Finopat


Le Mon, 06 Apr 2009 12:24:04 +0200, FinoPat


Bonjour,
j'ai un fichier excel avec un bouton qui lance un code vba.
Avec ce code je veux envoyer le fichier par mail

J'ai récupéré le code suivant qui fonctionne presque, j'ai une erreur :
"Le processus ne peut pas acceder au fichier car ce fichier est utilisé
par un autre processus"

Private Sub Envoi_Mail_Click()
Message = InputBox("Veuillez saisir le corps du message")

SendMailDirect _
Expediteur:="" _
, Destinataire:="" _
, copie:="" _
, sujet:="Mise à jour fichier affectation des pools IP et DHCP " _
, corps:="Voici le dernier fichier des pools IP et DHCP " & vbCrLf
& vbCrLf _
& "Commentaires:" & vbCrLf & vbCrLf _
& Message
End Sub

Sub SendMailDirect(Expediteur As String, Destinataire As String, copie
As String, sujet As String, corps As String)

Set iMsg = CreateObject("CDO.Message")
Set iConf = CreateObject("CDO.Configuration")

iConf.Load -1 ' CDO Source Defaults
Set Flds = iConf.Fields
With Flds
.Item("http://schemas.microsoft.com/cdo/configuration/sendusing")
= 2
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserver")
= "smtp.completel.net"
.Item("http://schemas.microsoft.com/cdo/configuration/smtpserverport")
= 25
.Update
End With

'Check out the Tips section if you want to change the .To and
.TextBody
With iMsg
Set .Configuration = iConf
.To = Destinataire
.CC = copie
.BCC = ""
.From = Expediteur
.Subject = sujet
.TextBody = corps
.AddAttachment "Affectation pool IP" & ThisWorkbook.Name
' You can add any file you want with this line .AddAttachment
"C:/Test.txt"
.Send
End With

End Sub

Faut il procéder autrement ?





--
Utilisant le client e-mail révolutionnaire d'Opera :
http://www.opera.com/mail/
Publicité
Poster une réponse
Anonyme