Re : Macro envoi mail automatique sous condition
Me voilà de retour,
Je pensais que tu allais adapter la macros à ton programme, je l'ai donc fait pour toi... J'ai ajouter une fonction de recherche de dernière ligne et ajouté des tests.
voici la solution qui marche mais je ne sais pas comment éviter le message demandant si tu autorise l'envoie du mail.
Sub Macro1()
Dim cell As Range
Dim Champs As Range
Dim StrMail As String
Dim i As Integer
'déterminer la dernière ligne
'utilisation de la fonction derligne dans le module1
i = Derligne
'délimiter le champs de recherche
Set Champs = Range(Cells(3, 6), Cells(i, 6))
'envoie un mail si l'adresse mail est correcte
For Each cell In Champs
StrMail = cell.Offset(0, -3).Value
If StrMail Like "*@*" Then
If cell.Value <= 0 Then Call EnvoiMail(StrMail)
End If
Next cell
End Sub
'** j'ai placé ces 2 procédures suivantes dans le module 1
Sub EnvoiMail(ByVal adr As String)
Dim oApp As Outlook.Application
Dim oMail As MailItem
Dim owin As Inspector
Set oApp = CreateObject("Outlook.application")
Set oMail = oApp.CreateItem(olMailItem)
With oMail
.To = adr
.Copy = "lolo@voila.fr"
.body = "blablabla"
.send
End With
End Sub
Function Derligne()
Derligne = WorksheetFunction.CountA(Worksheets("Feuil1").Range("B:B")) + 1
End Function