Macro envoi mail Excel 2007

Anonyme
Envoyé le 30/05/2012 à 15:22
Bonjour,
Je suis confronté à un problème, je travaille sur un fichier qui a besoin d'un suivi permanent par différents acteurs donc j'ai pensé à mettre en place des alertes mails.
J'aimerais qu'un mail soit envoyé automatiquement à chaque personne lorsque quelqu'un modifie et enregistre le document.
Version Excel 2007
Merci d'avance
Je suis confronté à un problème, je travaille sur un fichier qui a besoin d'un suivi permanent par différents acteurs donc j'ai pensé à mettre en place des alertes mails.
J'aimerais qu'un mail soit envoyé automatiquement à chaque personne lorsque quelqu'un modifie et enregistre le document.
Version Excel 2007
Merci d'avance
Bonjour,
Si leproblème est toujours d'actualité, voici une petit macro qui fait le travail, pour le moment sur deux adresses mail. A personnaliser pour plus de destinataires. Elle fonctionne avec Outlook.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Msg, Style, Title, Response, MyString
If Not ActiveWorkbook.Saved Then
Msg = "Souhaitez-vous enregistrer les modifications?"
Style = vbYesNo
Title = "Des modifications on été faites"
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then
ActiveWorkbook.Save
Dim ol As Object, myItem As Object
Set ol = CreateObject("outlook.application")
Set myItem = ol.CreateItem(olMailItem)
myItem.To = "destinataire1@fai.fr"
myItem.Subject = "Modification du fichier"
myItem.Body = "Bonjour, " & Chr(10) & "le fichier a été modifié voir la dernière version en PJ"
myItem.Attachments.Add ActiveWorkbook.FullName
myItem.Send
Set myItem = ol.CreateItem(olMailItem)
myItem.To = "destinataire2@fai.fr"
myItem.Subject = "Modification du fichier"
myItem.Body = "Bonjour, " & Chr(10) & "le fichier a été modifié voir la dernière version en PJ"
myItem.Attachments.Add ActiveWorkbook.FullName
myItem.Send
Set ol = Nothing
End If
End If
End Sub
Dupliquer entre "Set myItem" et "myItem.Send" pour les autres destinataires en modifiant les adresses mail et placer les six lignes avant "Set ol = Nothing". On peut faire plus court, mais ça marche comme cela.
Si leproblème est toujours d'actualité, voici une petit macro qui fait le travail, pour le moment sur deux adresses mail. A personnaliser pour plus de destinataires. Elle fonctionne avec Outlook.
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim Msg, Style, Title, Response, MyString
If Not ActiveWorkbook.Saved Then
Msg = "Souhaitez-vous enregistrer les modifications?"
Style = vbYesNo
Title = "Des modifications on été faites"
Response = MsgBox(Msg, Style, Title)
If Response = vbYes Then
ActiveWorkbook.Save
Dim ol As Object, myItem As Object
Set ol = CreateObject("outlook.application")
Set myItem = ol.CreateItem(olMailItem)
myItem.To = "destinataire1@fai.fr"
myItem.Subject = "Modification du fichier"
myItem.Body = "Bonjour, " & Chr(10) & "le fichier a été modifié voir la dernière version en PJ"
myItem.Attachments.Add ActiveWorkbook.FullName
myItem.Send
Set myItem = ol.CreateItem(olMailItem)
myItem.To = "destinataire2@fai.fr"
myItem.Subject = "Modification du fichier"
myItem.Body = "Bonjour, " & Chr(10) & "le fichier a été modifié voir la dernière version en PJ"
myItem.Attachments.Add ActiveWorkbook.FullName
myItem.Send
Set ol = Nothing
End If
End If
End Sub
Dupliquer entre "Set myItem" et "myItem.Send" pour les autres destinataires en modifiant les adresses mail et placer les six lignes avant "Set ol = Nothing". On peut faire plus court, mais ça marche comme cela.
Un bon exposé du problème, c'est déjà un grand pas vers la solution. Dans la mesure du possible, mes solutions sont testées, sur mon système actuel (W10 Pro version 1909), mais peuvent ne pas fonctionner sur tous les Pc
Bonjour,
Si la macro de Claude40 ne marche pas, j'en ai eu autre sous la main au bureau.
Claude40, peux tu confirmer que Outlook doit être ouvert pour que le mail soit envoyer?
Ciao
Si la macro de Claude40 ne marche pas, j'en ai eu autre sous la main au bureau.
Claude40, peux tu confirmer que Outlook doit être ouvert pour que le mail soit envoyer?
Ciao
Bonjour,
Je n'avais pas testé l'envoi effectif avec Outlook 2007, car je n'utilisais pas Outlook et il n'était pas bien paramétré pour l'envoi. Je viens de le paramétrer et l'envoi se fait même quand Outlook est fermé. J'ai même testé l'envoi direct et un envoi "redirectionné" de Orange vers Hotmail.
Je n'avais pas testé l'envoi effectif avec Outlook 2007, car je n'utilisais pas Outlook et il n'était pas bien paramétré pour l'envoi. Je viens de le paramétrer et l'envoi se fait même quand Outlook est fermé. J'ai même testé l'envoi direct et un envoi "redirectionné" de Orange vers Hotmail.
Un bon exposé du problème, c'est déjà un grand pas vers la solution. Dans la mesure du possible, mes solutions sont testées, sur mon système actuel (W10 Pro version 1909), mais peuvent ne pas fonctionner sur tous les Pc
Discussion trop ancienne
Cette discussion a été automatiquement fermée car elle n'a plus reçue de nouveau message depuis trop longtemps.
Nous vous suggérons de créer un nouveau message
4 enregistrements - Page 1/1
« Retour sur la liste des messages de ce forum