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.

Article Précédent Article Suivant

Les Meilleurs Conseils