Bonjour Julia
Tu demandes l'envoi d'un mail en cas de modification 😉
Donc fait une modification dans le fichier, n'importe laquelle, tu le fermes et ensuite tu regardes dans tes mails envoyés
Sinon avec on fichier original, tu fais ALT+F11 pour voir le code VBA
Dans un module, tu mets
' Variable public : Flag qui ce mettra à VRAI si modification effectuée
Public FlgModif As Boolean
Et dans ThisWorkbook
Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
' Avant de ferme le classeur, on vérifie si modification effectuée
If FlgModif Then
Dim OutApp As Object, EMail As Object
' Création d'une instance Outlook pour envoyer un mail
Set OutApp = CreateObject("Outlook.Application")
Set EMail = OutApp.CreateItem(0)
With EMail
.To = "adressedestinataire@domaine.com"
.Subject = "Modification main courante"
.Body = "Modification effectuée par " & Environ("suername")
.Send
End With
Set EMail = Nothing: Set OutApp = Nothing
End If
End Sub
Private Sub Workbook_Open()
' On vient d'ouvrir le classeur, le FLAG modification est donc FAUX
FlgModif = False
End Sub
' Si modification effectuée dans une des feuilles, on passe le FLAG à VRAI
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
FlgModif = True
End Sub
tu modifies, bien entendu "adressedestinataire@domaine.com" par ton adresse mail
Voilà, c'est tout
A+