Bonjour à tous.
je rencontre un petit problème concernant l'envoi des mails depuis un fichier excel.
sous excel 2003, aucun problème.
par contre, sous office 2010, cela ne fonctionne pas.
Pouvez-vous m'aider?
ci dessous le code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99
| Option Explicit
Dim rame As String
Dim Nature As String
Dim motrice As String
Dim jour As String
Dim Dasri As String
Dim NomSvg As String
Dim DestMail As String
Dim CheminSauvegarde As String
Dim ol As New Outlook.Application
Dim olmail As MailItem
Private Sub init()
rame = Cells(15, 4)
Nature = Cells(19, 4)
motrice = Cells(17, 4)
jour = Cells(13, 2)
Dasri = Cells(21, 4)
End Sub
Sub Clic_Bouton()
On Error GoTo ErreurRep
init
If (test = True) Then
'SAUVEGARDE
'Initie la variable du nom de chemin
CheminSauvegarde = "\\chemin réseau"
'renseigne les variables pour le nom du fichiers: incrémente les infos récupérées et affiche un message si enregistrement OK
NomSvg = "nom du fichier avec date et heure".xls"
'enregistre le fichier
ThisWorkbook.SaveCopyAs Filename:=CheminSauvegarde & NomSvg
'msg box pour l'tilisateur qui indique que le message a bien été sauvegardé
MsgBox ("Le fichier a bien été sauvegardé")
'ENVOYER UN MAIL POUR AVERTIR
'renseigne la variable du destinataire du mail
DestMail = "destinataire@societe.fr"
'fonction envoie mail
Set ol = New Outlook.Application
Set olmail = ol.CreateItem(olMailItem)
With olmail
.To = DestMail
.Subject = "ALERTE Nouveau fichier choc généré"
.Body = "Un nouveau fichier choc a été généré. Le nom de ce fichier est " & NomSvg
.Send
End With
Else
MsgBox (Application.UserName & " Le fichier n'a pas été sauvegardé." & "-" & " Merci de complèter correctement le fichier !!")
End If
Exit Sub
ErreurRep:
MsgBox "Répertoire de destination invalide"
End Sub
Function test() As Boolean
test = True
If rame = "" Then
MsgBox ("Vous n'avez pas saisi le numéro de la !!")
test = False
Exit Function
End If
If motrice = "" Then
MsgBox ("Vous n'avez pas saisi le numéro de la !!")
test = False
Exit Function
End If
If Nature = "" Then
MsgBox ("Vous n'avez pas saisi !!")
test = False
Exit Function
End If
If jour = "" Then
MsgBox ("Vous n'avez pas saisi les dates !!")
test = False
Exit Function
End If
If Dasri = "" Then
MsgBox ("Avez-vous utilisé un container jaune ??")
test = False
Exit Function
End If
End Function |
sur excel 2010, la macro s'arrete ici:
Set olmail = ol.CreateItem(olMailItem)
d'avance merci (NB: j'ai supprimé les infos de certaines variables, mais rien concernant l'envoi des mails)
Partager