modif code envoie classeur par email

julie999

XLDnaute Occasionnel
Bonjour j’utilisais cette macro qui fonctionnait parfaitement pour envoyer un classeur excel par email automatique
Le problème c’est que le classeur a changé de place et je n’arrive pas a trouver la bonne formule
Je pense qu’il faut modifier la ligne sPath = "C:\Archives photobox\Archive UK Order\"
Nom du fichier : Tableau uk order .xls
Emplacement ou il se trouve : "C:\Archives photobox\Archive UK Order\"
Je vous met le code complet en fin de message
Si quelqu ‘un a la solution ou une autre idée
Merci
julie

Sub macro8()
'
' envoie tableau uk order injection direct
'

'
rep = MsgBox("Voulez-vous envoyer le tableau Uk orders direct injection_tracker par email ?", vbYesNo + vbQuestion, "Envoie Email Photobox")
If rep = vbYes Then
sNomFic = "Tableau uk order .xls"
sPath = "C:\Archives photobox\Archive UK Order\"
'--- Envoi par mail
Dim olapp As Object 'Outlook.Application
Sheets("Envoie Email").Select
Range("B87").Select
Set olapp = CreateObject("Outlook.Application")
Do While Not IsEmpty(ActiveCell)
Dim msg As Object 'MailItem
Set msg = olapp.CreateItem(0)
msg.To = ActiveCell.Value
msg.Subject = Range("B74").Value
msg.CC = Range("b94").Value
msg.Body = Range("B77").Value & Chr(13) & Chr(13) & Range("B78").Value & Chr(13) & Chr(13) & Range("B79").Value & Chr(13) & Chr(13) & Range("B80").Value & Chr(13) & Chr(13) & Range("B81").Value & Chr(13) & Chr(13) & Range("B84").Value & Chr(13) & Chr(13)
msg.Attachments.Add sPath & sNomFic
msg.Send
ActiveCell.Offset(1, 0).Select
Loop
Set msg = Nothing
Set olapp = Nothing

MsgBox "le tableau Uk orders direct injection_tracker a été envoyé par email avec succés ...."
Else

End If
End Sub
 

gosselien

XLDnaute Barbatruc
Re : modif code envoie classeur par email

Bon(jour)soir...
le chemin du fichier est dans la ligne:
sPath = "C:\Archives photobox\Archive UK Order\"
vérifie s'il est là ou pas et s'il a changé, mets à la place le nouveau répertoire où tu l'as trouvé :)

Bonne nuit
P.

 

julie999

XLDnaute Occasionnel
Re : modif code envoie classeur par email

bonjour je suis toujours dans l'impasse j'ai retourné le code dans tous les sens mais je n'ai pas le niveau
le mail ne s'envoie pas ou peux etre le probleme svp

Sub macro8()
'
' envoie tableau uk order injection direct
'

'

rep = MsgBox("Voulez-vous envoyer le tableau Uk orders direct injection_tracker par email ?", vbYesNo + vbQuestion, "Envoie Email Photobox")
If rep = vbYes Then
répertoireAppli = "C:\Archives photobox\Dossier tempo pour email"
Sheets(Array("Réception", "Cross Docking", "UK Order Injection")).Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs répertoireAppli & "\tableau Uk orders" & Format(Worksheets("UK Order Injection").Range("a3"), "d\-mm\-yyyy") & ".xls"
ActiveWindow.Close
'--- Envoi par mail
Dim olapp As Object 'Outlook.Application
Sheets("Envoie Email").Select
Range("B87").Select
Set olapp = CreateObject("Outlook.Application")
Do While Not IsEmpty(ActiveCell)
Dim msg As Object 'MailItem
Set msg = olapp.CreateItem(0)
msg.To = ActiveCell.Value
msg.Subject = Range("B74").Value
msg.CC = Range("b94").Value
msg.Body = Range("B77").Value & Chr(13) & Chr(13) & Range("B78").Value & Chr(13) & Chr(13) & Range("B79").Value & Chr(13) & Chr(13) & Range("B80").Value & Chr(13) & Chr(13) & Range("B81").Value & Chr(13) & Chr(13) & Range("B84").Value & Chr(13) & Chr(13)
msg.Attachments.Add répertoireAppli & "\tableau Uk orders" & _
Format(Worksheets("UK Order Injection").Range("a3"), "d\-mm\-yyyy") & ".xls"
msg.Send
ActiveCell.Offset(1, 0).Select
Loop
Set msg = Nothing
Set olapp = Nothing

MsgBox "le tableau Uk orders direct injection_tracker a été envoyé par email avec succés ...."
Else
Sheets("MENU").Select
End If
End Sub

ca bloque sur " msg.Send"
 

Roland_M

XLDnaute Barbatruc
Re : modif code envoie classeur par email

bonjour,

comprend pas bien l'histoire de ton chemin !?
là où tu l'as mis c'est correct !
et si c'est un autre et bien tu le retapes point final ! on ne saurait rien faire pour toi à ce niveau !

par contre ici
'les espaces dans ce nom sont correctent ? "sNomFic = "Tableau uk order .xls"
'-------ne serait-ce pas plutôt comme ceci: "sNomFic = "Tableau uk order.xls"

EDIT: et comme ceci, il s'agit du premier car tu en mets un deuxième complètement différent !

Code:
Sub macro8()
' envoie tableau uk order injection direct
rep = MsgBox("Voulez-vous envoyer le tableau Uk orders direct injection_tracker par email ?", vbYesNo + vbQuestion, "Envoie Email Photobox")
If rep <> vbYes Then Exit Sub
'suite ok ...
sNomFic = "Tableau uk order .xls"
sPath = "C:\Archives photobox\Archive UK Order\"
'--- Envoi par mail
Sheets("Envoie Email").Select: Range("B87").Select
Dim olapp As Object 'Outlook.Application
Set olapp = CreateObject("Outlook.Application")
Dim msg As Object 'MailItem
Do While Not IsEmpty(ActiveCell)
  Set msg = olapp.CreateItem(0)
  With msg
   .To = ActiveCell.Value
   .Subject = Range("B74").Value
   .CC = Range("b94").Value
   .Body = Range("B77").Value & Chr(13) & Chr(13) & Range("B78").Value & Chr(13) & Chr(13) & Range("B79").Value & Chr(13) & Chr(13) & Range("B80").Value & Chr(13) & Chr(13) & Range("B81").Value & Chr(13) & Chr(13) & Range("B84").Value & Chr(13) & Chr(13)
   .Attachments.Add sPath & sNomFic
   .Send
  End With
  ActiveCell.Offset(1, 0).Select
  Set msg = Nothing
Loop
'
Set olapp = Nothing
MsgBox "le tableau Uk orders direct injection_tracker a été envoyé par email avec succés ...."
End Sub
 
Dernière édition:

julie999

XLDnaute Occasionnel
Re : modif code envoie classeur par email

re le fil
je vous joins un fichier pour essayer de comprendre mon probleme

je cherche a envoyé la feuille UK Order Injection par email avec les info sur la feuille Envoie Email a plusieur destinataire
mais la macro bloque sur "msg.Send"
certainement du a l'emplacement de la piece jointe mais je ne vois pas l'erreur ....

Sub macro8()
'
' envoie tableau uk order injection direct
'

'
répertoireAppli = "C:\Archives photobox\Dossier tempo pour email"
Sheets(Array("UK Order Injection", "Cross Docking", "Way Bill Arvato")).Copy
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs répertoireAppli & "\Tableau uk order du " & Format(Worksheets("UK Order Injection").Range("a3"), "d\-mm\-yyyy") & ".xls"
ActiveWindow.Close
rep = MsgBox("Voulez-vous envoyer le tableau Uk orders direct injection_tracker par email ?", vbYesNo + vbQuestion, "Envoie Email Photobox")
If rep = vbYes Then
sNomFic = "Tableau uk order" & ".xls"
sPath = "C:\Archives photobox\Dossier tempo pour email"
'--- Envoi par mail
Dim olapp As Object 'Outlook.Application
Sheets("Envoie Email").Select
Range("B87").Select
Set olapp = CreateObject("Outlook.Application")
Do While Not IsEmpty(ActiveCell)
Dim msg As Object 'MailItem
Set msg = olapp.CreateItem(0)
msg.To = ActiveCell.Value
msg.Subject = Range("B74").Value
msg.CC = Range("b94").Value
msg.Body = Range("B8").Value & Chr(13) & Chr(13) & Range("B9").Value & Chr(13) & Chr(13) & Range("B10").Value & Chr(13) & Chr(13) & Range("B11").Value & Chr(13) & Chr(13) & Range("B12").Value & Chr(13) & Chr(13) & Range("B15").Value & Chr(13) & Chr(13)
msg.Attachments.Add répertoireAppli & "\Tableau uk order du " & Format(Worksheets("UK Order Injection").Range("a3"), "d\-mm\-yyyy") & ".xls"
msg.Send
ActiveCell.Offset(1, 0).Select
Loop
Set msg = Nothing
Set olapp = Nothing

MsgBox "le tableau Uk orders direct injection_tracker a été envoyé par email avec succés ...."
Else
Sheets("MENU").Select
End If
End Sub

merci de votre aide Julie
 

Pièces jointes

  • Classeur1 test.xlsx
    156.7 KB · Affichages: 46

grisan29

XLDnaute Accro
Re : modif code envoie classeur par email

bonsoir Julie999, gosselien,Roland_M et le forum

après 290 message vous devriez savoir mettre vos codes entre balises pour les rendre plus lisibles

pourquoi
toto@neuf.fr;0
a ;0 en fin de ligne de toute façon ton classeur ne servira a rien car il n'y a pas de code

Pascal
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 175
Messages
2 085 952
Membres
103 058
dernier inscrit
florentLP