Comment envoyer un e-mail via Outlook lorsque le classeur est enregistré dans Excel ?
Ce guide montre comment envoyer automatiquement un e-mail via Outlook chaque fois qu'un classeur spécifique est enregistré dans Excel. En utilisant un simple code VBA, vous pouvez vous assurer que les mises à jour de votre classeur sont partagées de manière transparente.
Envoyer un e-mail via Outlook lorsque le classeur est enregistré avec un code VBA
Envoyer un e-mail via Outlook lorsque le classeur est enregistré avec un code VBA
Pour envoyer un e-mail via Outlook lorsque le classeur est enregistré dans Excel, veuillez suivre les étapes ci-dessous.
1. Tout d'abord, enregistrez le classeur en tant que Classeur Excel prenant en charge les macros. Cliquez sur Fichier > Enregistrer sous. Dans la boîte de dialogue Enregistrer sous, choisissez un dossier pour enregistrer le classeur, entrez un nom dans la zone Nom du fichier, sélectionnez Classeur Excel prenant en charge les macros dans la liste déroulante Spécifier le format d'enregistrement, puis cliquez sur le bouton Enregistrer. Voir capture d'écran :
2. Ouvrez le Classeur Excel prenant en charge les macros que vous venez d'enregistrer, appuyez simultanément sur les touches Alt + F11 pour ouvrir la fenêtre Microsoft Visual Basic for Applications.
2. Dans la fenêtre Microsoft Visual Basic for Applications, double-cliquez sur ThisWorkbook dans la barre de gauche, puis copiez et collez le code VBA ci-dessous dans la fenêtre de code ThisWorkbook. Voir capture d'écran :
Code VBA : Envoyer un e-mail lorsque le classeur est enregistré
Private Sub Workbook_AfterSave(ByVal Success As Boolean)
'Updated by Extendoffice 20181102
Dim xOutApp As Object
Dim xMailItem As Object
Dim xName As String
On Error Resume Next
Set xOutApp = CreateObject("Outlook.Application")
Set xMailItem = xOutApp.CreateItem(0)
xName = ActiveWorkbook.FullName
With xMailItem
.To = "Email Address"
.CC = ""
.Subject = "The workbook has been saved"
.Body = "Hi," & Chr(13) & Chr(13) & "File is now updated."
.Attachments.Add xName
.Display
'.send
End With
Set xMailItem = Nothing
Set xOutApp = Nothing
End Sub
Remarque : Remplacez Adresse e-mail par l'adresse e-mail du destinataire dans la ligne .To = "Adresse e-mail". Modifiez les champs Cc, Objet et Corps dans le code VBA selon vos besoins.
3. Appuyez simultanément sur les touches Alt + Q pour fermer la fenêtre Microsoft Visual Basic for Applications.
Dès maintenant, chaque fois que vous mettez à jour et enregistrez le classeur, un e-mail sera automatiquement créé avec le classeur mis à jour en pièce jointe. Veuillez cliquer sur le bouton Envoyer pour envoyer l'e-mail. Voir capture d'écran :
Remarque : Ce code VBA fonctionne uniquement si vous utilisez Outlook comme programme de messagerie.
Articles connexes :
- Comment envoyer automatiquement un e-mail basé sur une valeur de cellule dans Excel ?
- Comment envoyer un e-mail si une certaine cellule est modifiée dans Excel ?
- Comment envoyer un e-mail si un bouton est cliqué dans Excel ?
- Comment envoyer un e-mail si une date d'échéance est atteinte dans Excel ?
- Comment envoyer un rappel ou une notification par e-mail si le classeur est mis à jour dans Excel ?
Meilleurs outils de productivité pour Office
Boostez vos compétences Excel avec Kutools pour Excel, et découvrez une efficacité sans précédent. Kutools pour Excel propose plus de300 fonctionnalités avancées pour augmenter la productivité et gagner du temps. Cliquez ici pour obtenir la fonctionnalité dont vous avez le plus besoin...
Office Tab apporte une interface à onglets à Office, et facilite grandement votre travail
- Activez la modification et la lecture par onglets dans Word, Excel, PowerPoint, Publisher, Access, Visio et Project.
- Ouvrez et créez plusieurs documents dans de nouveaux onglets de la même fenêtre, plutôt que dans de nouvelles fenêtres.
- Augmente votre productivité de50 %, et réduit des centaines de clics de souris pour vous chaque jour !