Macro envoi mail automatique sous condition

Masto

XLDnaute Nouveau
Bonjour le forum;

J'ai cherché pas mal de temps sur le forum sans toutefois trouver bonheur, alors voici ma question: je cherche une macro qui pourra envoyer un mail de relance automatique lorsque le nombre en colonne F = ou < "0":
Le destinataire en colonne C
L'objet en colonne D
Mettre toujours les mêmes personnes en copie "toto@voila.fr" et "lolo@voila.fr"
Le corps de texte du mail serait toujours le même : "Bla bla bla"
Ma signature par défaut dans le mail.

Et tout ceci biensûr qu'une fois par jour, mais à chaque jour de retard!
J'utilise outlook 2003

D'avanci merci de bien vouloir m'aider;

Masto
 

Pièces jointes

  • Test.xls
    27.5 KB · Affichages: 371
  • Test.xls
    27.5 KB · Affichages: 402
  • Test.xls
    27.5 KB · Affichages: 407

smotty

XLDnaute Occasionnel
Re : Macro envoi mail automatique sous condition

Salut,

J'espère que ces qq lignes pourront t'aider, offset à revérifier, je n'ai plus ton tableau sous les yeux.

Pense à référencer outlook en allant dans l'éditeur VBA, outil, reférence et sélection de "Microsoft Outlook 11.0 etc..." sinon outllok ne fonctionne pas

Sub Macro1()
dim cell as range
for each cell in range("F:F")
if val(cell.value)<= 0 then call EnvoiMail(cell.offset(0,-2).value)
next cell
end sub

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="toto@voila.fr"
.body= "blablabla"
.send
End With

End Sub
 

smotty

XLDnaute Occasionnel
Re : Macro envoi mail automatique sous condition

je viens d'essayer et ça marche chez moi.

le seul souci est qu'un message s'affiche disant qu'un programme essaye d'envoyer un mail et tu dois répondre si tu accepte. Je crois que c'est une histoire de signature informatique mais je ne connais pas très bien cette partie.
 

Masto

XLDnaute Nouveau
Re : Macro envoi mail automatique sous condition

Ouais en fait je pense que c'est dans ma fenêtre VBA que je dispose mal ta macro. Biensûr je dois changer les adresses, le contenu, mais j'au dû me manquer quelque-part si tu peux jeter un oeil...
Merci Smotty;
 

Pièces jointes

  • Test.xls
    30 KB · Affichages: 400
  • Test.xls
    30 KB · Affichages: 463
  • Test.xls
    30 KB · Affichages: 482

JCGL

XLDnaute Barbatruc
Re : Macro envoi mail automatique sous condition

Bonjour,

Rien n'appelle ta Macro1...

Plusieurs possibilités sont possibles (Événement, Ouverture ou Bouton).

Je te conseille le bouton, par exemple :

Insère une image ou un logo
Clique Droit et Affecter une Macro
Dans la liste : Macro1

A+
 

smotty

XLDnaute Occasionnel
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.:confused:

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
 

smotty

XLDnaute Occasionnel
Re : Macro envoi mail automatique sous condition

J'ai oublié de préciser, comme le dit JCGL il faut un évènement qui lance ta macro.
Je te conseillerais de la lancer à l'ouverture du dossier (évènement open dans ThisWorkbook) mais n'oublie pas d'indiquer que le mail a été envoyé. Sinon les memes personnes recevront à chaque ouverture un mail.

à toi de jouer...
 

LouiseSydney

XLDnaute Nouveau
Re : Macro envoi mail automatique sous condition

Hello
Jai un peu le meme cas a resoudre mais je n y arrive
j'aimerai creer une macro qui envoie un email quand la colonne Y contient un x, dans la colonne X jai le nom du destinataire et dans la colonne V le corps du texte.
plusieurs lignes peuvent contenir un x donc plusieurs emails peuvent etre envoyer
ci-joint le document initial

grand merci pour votre aide

Cheerio
Regarde la pièce jointe cmt ca marche.xlsx
 

Discussions similaires

Réponses
16
Affichages
534
Réponses
17
Affichages
1 K

Statistiques des forums

Discussions
312 299
Messages
2 086 998
Membres
103 429
dernier inscrit
PhilippeH