Macro envoi mail automatique sous condition

  • Initiateur de la discussion Initiateur de la discussion Masto
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

M

Masto

Guest
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

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
 
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.
 
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

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+
 
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
 
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...
 
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
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
12
Affichages
568
Réponses
16
Affichages
1 K
Réponses
17
Affichages
2 K
E
Réponses
1
Affichages
1 K
Retour