Demande aide

  • Initiateur de la discussion tilkette
  • Date de début
T

tilkette

Guest
Salut,

Je cherche à créer une macro (ou autre action) dans excel pour que lorsque l'on fait une modif dans un document excel ça génère la création d'un mail.

Est ce que ça dit quelque chose à quelqu'un ?

A+
 

MichelXld

XLDnaute Barbatruc
bonjour

j'espere que cet exemple pourra t'aider
à chaque fois que tu sauvegardes des modifications dans le classeur , un message est envoyé ( procedure à placer au niveau de 'ThisWorkbook' )
dans le message est indiqué :
le nom du classeur
la date
le nom du profil connecté au poste de travail ( adapté d'une macro de @+Thierry )


Code:
Private Declare Function GetUserName Lib 'advapi32.dll' Alias 'GetUserNameA' _
(ByVal lpBuffer As String, nSize As Long) As Long

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim iMsg As Object, iConf As Object
Dim strHTML As String, UserName As String
Dim lpBuff As String * 25
Dim retVal As Long

If ThisWorkbook.Saved = False Then

retVal = GetUserName(lpBuff, 25)
'source 'Spy Opening/Closing @Thierry
UserName = Left(lpBuff, InStr(lpBuff, Chr(0)) - 1)

strHTML = ''
strHTML = strHTML & '<HEAD>'
strHTML = strHTML & '<BODY>'
strHTML = strHTML & '<b> Fichier : </b>' & ThisWorkbook.FullName & '</br>'
strHTML = strHTML & '<b> Modifié le : </b>' & Now & '</br>'
strHTML = strHTML & '<b> Par : </b>' & UserName & '</br>'
strHTML = strHTML & '</BODY>'
strHTML = strHTML & ''


Set iMsg = CreateObject('CDO.Message')
Set iConf = CreateObject('CDO.Configuration')

With iMsg
Set .Configuration = iConf
.To = 'michelxld@yahoo.fr'
.Subject = 'info modification classeur '
.HTMLBody = strHTML
.Send
End With
End If

End Sub


bon week end
MichelXld
 

Discussions similaires

Statistiques des forums

Discussions
312 246
Messages
2 086 573
Membres
103 247
dernier inscrit
bottxok