Envoi mail Macro excel

Fermé
MJ60 Messages postés 1 Date d'inscription vendredi 29 août 2014 Statut Membre Dernière intervention 29 août 2014 - Modifié par MJ60 le 29/08/2014 à 14:04
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 - 1 sept. 2014 à 18:15
Bonjour,

Je souhaiterai créer une alerte sur mon fichier excel de sorte que lorsqu'une note est différente de 0, un mail est envoyé à des destinataires.
J'ai deux macro qui fonctionnent indépendamment l'une de l'autre mais je n'arrive pas à les lier.

Ci-dessous les macros :

'Envoi de mail personnalisés d'une liste excel via outlook

Public Sub EnvoiAutomatiqueMail()
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim adresse As String
Dim message As String
Dim sujet As String

sujet = "Macro QSE Achats!!!!"
For i = 2 To 3
adresse = Range("c" & i)
message = Range("d" & i) & vbCrLf & "Je fais le test macro dis moi si ca fonctionne"


Set OutlookApp = CreateObject("outlook.application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
.Subject = sujet
.To = adresse
.Body = message
.Send
End With


Next i



End Sub

Sub Macro5()

Sheets("Feuil1").Select
Cells(1, 1).Select
If ActiveCell.Value > 0 Then
ActiveWorkbook.SendMail ("adresse mail")

End If

End Sub



Pouvez-vous m'aider.

Merci par avance pour votre aide !

JM
A voir également:

3 réponses

f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
30 août 2014 à 17:26
Bonjour,

comment lancez-vous l'une ou l'autre des macros ????
0
Bonjour,

La macro doit se lancer lorsque la note qui se trouve en m8 est inférieure à 92.

Merci,

Jean-Marie
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
1 sept. 2014 à 18:15
Bonjour,

a mettre dans le VBA de la feuille de saisie:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim OutlookApp As Object
Dim OutlookMail As Object
Dim adresse As String
Dim message As String
Dim sujet As String

If Not Application.Intersect(Target, Range("M:M")) Is Nothing And Target.Count = 1 And (Target < 92 And Target > 0) Then
sujet = "Macro QSE Achats!!!!"
For i = 2 To 3
adresse = Range("c" & i)
message = Range("d" & i) & vbCrLf & "Je fais le test macro dis moi si ca fonctionne"
Set OutlookApp = CreateObject("outlook.application")
Set OutlookMail = OutlookApp.CreateItem(0)
With OutlookMail
.Subject = sujet
.To = adresse
.Body = message
.Send
End With
Set OutlookApp = Nothing
Set OutlookMail = Nothing
Next i
End If
End Sub
0