Ajouter une boite mail sous condition
Bonjour,
Peut-être que le sujet a déjà était posé. Mais je n'ai rien trouver concernant quelque chose de similaire.
J'utilise une macro très simple pour l'envoi d'un compte rendu par excel qui est :
Sub envoiPlageCellules_Excel2002()
ActiveSheet.Range("A1:B52").Select ' la plage de cellules à envoyer
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "Ci joint le compte rendu"
.Item.To = "nom1@outlook.com; nom2@outlook.com"
.Item.Subject = "CR du " & Date
.Item.Send
End With
End SubMon problème est que périodiquement, ce compte rendu doit être envoyer à un roulement de personnes d'astreinte en plus des destinataires habituels.
n'étant pas extrêmement à l'aise avec VBA j'ai essayé de bricoler quelque chose mais ça n’aboutit à rien ... :
Sub envoiPlageCellules_Excel2002()
ActiveSheet.Range("A1:B52").Select ' la plage de cellules à envoyer
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "Ci joint le compte rendu de ce jour"
If Range("B2") = ("Astreinte1") Then ' B2 étant une sélection des personnes d'astreinte
.Item.To = "Astreinte1@outlook.com; nom1@outlook.com; nom2@outlook.com"
End If
If Range("B2") = ("Astreinte2") Then
.Item.To = "Astreinte2@outlook.com; nom1@outlook.com; nom2@outlook.com"
End If
.Item.Subject = "CR Prod du " & Date
.Item.Send
End With
End SubAuriez-vous un chemin vers lequel je puisse m'orienter afin de pouvoir envoyer ce mail aux bonnes personnes svp ?
Merci d'avance
Hello,
Moi ce que je ferai c'est de déterminer la liste dans Excel. Manuellement ou dynamiquement en fonction de si tu peux le faire et après je ferai une cellule qui concatène tous les éléments de la liste dans une seule cellule (très rapide par PowerQuery). Une fois que t'as ta cellule sous ce format : "utilisateur1@gmail.com","utilisateur2@gmail.com".... tu as juste dans ton code à mettre :
Sub envoiPlageCellules_Excel2002()
ActiveSheet.Range("A1:B52").Select ' la plage de cellules à envoyer
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "Ci joint le compte rendu"
.Item.To = TaCellule
.Item.Subject = "CR du " & Date
.Item.Send
End With
End SubTu vois le truc ?
@+