Excel - Être averti par mail lorsque le classeur partagé est mis à jour
Problème
J'ai un classeur Excel stocké sur un lecteur réseau et utilisé par plusieurs utilisateurs. J'ai besoin d'une macro qui envoie une notification (par courrier électronique) chaque fois que quelqu'un met à jour la feuille Excel. Comment cela peut-il être mis en œuvre?Solution
Cette macro envoie automatiquement un courrier électronique à une ou plusieurs adresses chaque fois que le classeur est enregistré:Private Sub Workbook_BeforeSave (ByVal SaveAsUI As Boolean, _Annuler comme booléen)
Dim answer As String
answer = MsgBox ("C'est ici que vous mettez le texte pour demander à l'utilisateur s'il veut enregistrer ou non" vbYesNo ", voici le titre de cette boîte")
Si answer = vbNo Puis Cancel = True
Si réponse = vbYes Then
'open outlook type stuff
Définir OutlookApp = CreateObject ("Outlook.Application")
Définir OlObjects = OutlookApp.GetNamespace ("MAPI")
Définir newmsg = OutlookApp.CreateItem (olMailItem)
'ajouter des destinataires
'newmsg.Recipients.Add ("Nommez ici")
newmsg.Recipients.Add (" ")
'Ajouter un sujet
newmsg.Subject = " Ligne d'objet de l'e-mail automatique ici "
'ajouter le corps
newmsg.Body = "corps de l'e-mail automatique ici"
newmsg.Display 'display
newmsg.Send 'envoyer un message
'donne la conformation du message envoyé
MsgBox "insérer le test de la boîte de confirmation ici", "titre de la boîte de confirmation"
Fin si
'enregistrer le document
'Me.Worksheets.Save
End Sub
Merci à shark2000br pour cette astuce.