XL 2010 Envoi automatique mails outlook

  • Initiateur de la discussion Initiateur de la discussion Fibule86
  • 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 !

Fibule86

XLDnaute Nouveau
Bonjour à tous,

Je poste car je ne trouve pas ma réponse sur le forum ou plutôt je n'arrive pas à adapter les réponses à mon problème étant donné que je suis une très jeune novice 🙄dans le vba.

Je vous explique mon problème. J'ai un tableau qui va me servir de suivi durant au moins 6 mois. Je vais y saisir de nombreuses candidatures et j'ai besoin d'envoyer des mails automatiques à des moments différents.
- lors de la candidatures pour accuser réception de celle-ci et cocher la case pour ne pas lui renvoyer un autre mail
- lors de l'affectation pour lui indiquer son lieu et heure de travail et cocher la case pour montrer que j'ai envoyé le mail

Je voudrais me servir de ce tableau pour d'autres envois automatiques mais je ne vais pas tout demander en une seule fois et peut être que je pourrais me débrouiller plus ou moins seule pour le reste. J'ai besoin que vous me mettiez sur les rails.....

Comme vous pouvez le voir, j'ai écrit un embryon de code ( qui fonctionne) mais je cale pour l'envoi du mail automatique si j'ai plus de 2 adresses mail.... je n'arrive pas à comprendre comment lui dire que je souhaite envoyer le mail à toutes les adresses de la colonne J. Et puis surtout, je ne sais pas comment lui de cocher la case "R" si il est envoyé et de ne pas envoyé si "R" coché.....

J'espère avoir été explicite, si non n'hésitez pas à revenir vers moi.

Merci à ceux qui pourront m'aider
 

Pièces jointes

Salut,

Pour envoyer le mail en automatique il te suffit juste d'avoir le code comme ci dessous (rajouter le ''.send'') :

VB:
Private Sub CommandButton1_Click()
Dim Mail As Variant
Dim ligne As Integer

Set Mail = CreateObject("Outlook.Application")

For ligne = 2 To 4



With Mail.CreateItem(olMailItem)
    .Subject = "Candidature " & Range("j" & ligne)
    .To = Sheets("candidatures").Range("J" & ligne)
    .Body = Sheets("textes").Range("B2")
    .Display
    
    .send
    
End With
Next ligne
End Sub

Après je pense qu'il faudrait une varriable qui compte le nombre de ligne ainsi qu'une autre qui renseigne une cellules en même temps !
 
Bonjour,
Je compte commencer une macro du même ordre, mais de l'autre coté, celui du chercheur d'emploi, et je pense que nos outils devraient se ressembler dans la forme, à ceci près que je compte ajouter un bouton pour chercher les offres d'emploi d'abord.
J'effectuerais manuellement la recherche des adresses, je pense. Il y a trop de risque d'obtenir une adresse incorrecte ou inappropriée.
C'est une sorte de défi pour moi, et une bonne occasion de progresser en VBA.

Bonjour @kaozuin ,
Pour éviter les doublons, je pensais effectuer une recherche dans les mails envoyés, mais je pense qu'avec ta méthode, je devrais pouvoir ajouter la date d'envoi dans la colonne suivante.
 
Salut,

Pour envoyer le mail en automatique il te suffit juste d'avoir le code comme ci dessous (rajouter le ''.send'') :

VB:
Private Sub CommandButton1_Click()
Dim Mail As Variant
Dim ligne As Integer

Set Mail = CreateObject("Outlook.Application")

For ligne = 2 To 4



With Mail.CreateItem(olMailItem)
    .Subject = "Candidature " & Range("j" & ligne)
    .To = Sheets("candidatures").Range("J" & ligne)
    .Body = Sheets("textes").Range("B2")
    .Display
   
    .send
   
End With
Next ligne
End Sub

Après je pense qu'il faudrait une varriable qui compte le nombre de ligne ainsi qu'une autre qui renseigne une cellules en même temps !

Merci pour ce copier/coller de mon code, mais je ne veux pas envoyer mon mail directement mais pouvoir le visualiser et l'envoyer manuellement si tout va bien
 
Bonjour Fibule86, le forum

Comme vous pouvez le voir, j'ai écrit un embryon de code ( qui fonctionne) mais je cale pour l'envoi du mail automatique si j'ai plus de 2 adresses mail.... je n'arrive pas à comprendre comment lui dire que je souhaite envoyer le mail à toutes les adresses de la colonne J. Et puis surtout, je ne sais pas comment lui de cocher la case "R" si il est envoyé et de ne pas envoyé si "R" coché.....

Non testé et peut-être pas tout compris mais cela te donnera des précisions dans la construction de ton code.

@+

VB:
Private Sub CommandButton1_Click()
Dim Mail As Variant
Dim ligne As Integer

Set Mail = CreateObject("Outlook.Application")

Set shc = Sheets("candidatures")
derligne = shc.Cells(1, 1).End(4).Row

For ligne = 2 To derligne
If Cells(ligne, "R") = "" Then  '-- si la cellule est vide
    With Mail.CreateItem(olMailItem)
        .Subject = "Candidature " & Range("j" & ligne)
        .To = Sheets("candidatures").Range("J" & ligne)
        .Body = Sheets("textes").Range("B2")
        .Display
        '.Send
      End With
    Cells(ligne, "R") = Now   '-affiche date et heure
End If
Next ligne

End Sub
 

Pièces jointes

- 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

Discussions similaires

Réponses
12
Affichages
355
Réponses
3
Affichages
334
  • Question Question
XL 2019 User Form
Réponses
9
Affichages
314
  • Question Question
Microsoft 365 Code VBA
Réponses
7
Affichages
817
Réponses
6
Affichages
299
Retour