OVH Cloud OVH Cloud

Envoyer un mail en joignant le fichier sur lequel on travaille

1 réponse
Avatar
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 ?

1 réponse

Avatar
FinoPat
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 a écrit:



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/