Envoie mail automatique VBA via Outlook

Fermé
BJC80_1555 - 19 févr. 2022 à 17:41
BJC80_1555 Messages postés 9 Date d'inscription samedi 19 février 2022 Statut Membre Dernière intervention 22 février 2022 - 22 févr. 2022 à 12:43
Bonjour,

Je suis étudiant et débutant en programmation. J'ai une préoccupation majeure et je viens solliciter une aide bienveillante des personnes mieux éclairées.

En effet, sur un fichier Excel, j'ai la colonne B qui liste les noms de mes Techniciens (6 au total), la colonne F, liste les noms des sites (270 au total) sur lesquels ils doivent intervenir en cas de soucis.

- Première problématique : chaque technicien intervient sur plusieurs sites (environ 45 par personne) les noms se répètent (sur plusieurs ligne) donc dans cette colonne.

- Deuxième problématique est que : les colonnes X, Z, AC et AE, remontent les signaux d'alerte (0 pour normal et 1 pour défaut signalé) tels que si au moins l'une de ses colonnes est >= 1, ceci déclenche l'envoie automatique du mail seulement au(x) technicien(s) concerné(s) en signifiant dans le mail, le nom du site concerné ainsi que la colonne affichant le défaut.

Par contre, si X, Z, AC et AE = 0 ; ne rien faire

En gros, le mail doit être déclenché dès que l'une de ces quatre colonnes change d'état de 0 à 1

Je suis arrivé à écrire un code qui envoie un mail, mais je n'arrive pas deux chose :

à l'automatiser sans une action sur un bouton "envoyer " par exemple et à intégrer toute les conditions ci-dessus énumérées.

Je vous prie de bien vouloir m'aider. Merci d'avance.

Mon code actuel :

Sub Automatisation_des_mails()

Dim LeMail As Variant 'Déclaration de variables.

Set LeMail = CreateObject("outlook.Application") 'Création d'un objet Outlook.


With LeMail.CreateItem(olMailItem) 'Début de la boucle

'Sujet principal du message.
.Subject = "Alerte maintenance Indicateurs : Vous avez sans doute une intervention à
effectuer"

'Adresse(à qui envoie t-on le mail) du destinataire.
.To = Range("D15") 'Champs envoyer à

'Contenu(détails)mail.
.Body = "Bonjour " & Range("B15") & "," & vbCrLf & " " & vbCrLf & "Un indicateur te concernant est à corriger sur le " & Range("X15") & "." & vbCrLf & " " & vbCrLf & "Prière d'aller consulter ton tableau de bord sous : Q:\man\\Suivi-travaux.xlsx" & vbCrLf & " " & vbCrLf & "Cordialement," & vbCrLf & " " & vbCrLf & "Le système de maintenance." & vbCrLf & "Ne pas répondre, ceci est un mail automatique."

.Display 'Affiche le mail en brouillon dans Outlook, pratique pour vérifier avant d'envoyer
'.Send 'Envoie directement le mail

End With


End Sub
A voir également:

25 réponses

BJC80_1555 Messages postés 9 Date d'inscription samedi 19 février 2022 Statut Membre Dernière intervention 22 février 2022 1
22 févr. 2022 à 10:17
Si toujours un nom..
En réalité il ya 6 techniciens et 6 Rp, donc les noms se répètent sur plusieurs lignes en fonction des sites qui leurs sont attribué.

Au moyen d'un simple filtre on arrive à les regrouper.
0
BJC80_1555 Messages postés 9 Date d'inscription samedi 19 février 2022 Statut Membre Dernière intervention 22 février 2022 1
22 févr. 2022 à 10:23
VOUS aurez une adresse mail, je vous envoie un fichier Excel de données test ?

mon adresse : air.esperancefrance@gmail.com
0
BJC80_1555 Messages postés 9 Date d'inscription samedi 19 février 2022 Statut Membre Dernière intervention 22 février 2022 1
22 févr. 2022 à 11:11
Je ne les ai pas perdu. Le tableau principal n'intègre pas une colonne adresse mail.

Donc je voudrai le mettre sur une autre feuille.

A=RP et B=Tec, ces deux colonnes ont toujours un nom m.

Oui jaune ou vert, les mails se déclencheront en fonction du code couleur appartenant soit aux RP soit aux techniciens.

Si tu désire je peux t'envoyer un fichier test par mail. Si tu me passe ton adresse mail.

Le mien : air.esperancefrance@gmail.com.
0
f894009 Messages postés 17185 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 15 avril 2024 1 701
Modifié le 22 févr. 2022 à 11:52
Re,

Je viens de vous envoyer un @mail a l'adresse que vous avez mis a dispo.
Il ne faut jamais mettre d'adresse @mail dans un post, passez par la messagerie privee de CCM

Enlevez cette adresse
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
BJC80_1555 Messages postés 9 Date d'inscription samedi 19 février 2022 Statut Membre Dernière intervention 22 février 2022 1
22 févr. 2022 à 12:43
Je vous ai laissé un mail .
0