1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
| Sub Envoi_CR_1()
Dim Destinataires1()
Dim Destinataires2()
Dim Sujet1 As String, Sujet2 As String
Dim AccuseReception As Boolean
Dim DerLigne As Integer, Tab_Ligne As Integer
'Bornes du tableau de destinataires 1:
DerLigne = Worksheets("Destinataires 1").Range("A" & Rows.Count).End(xlUp).Row
ReDim Destinataires1(DerLigne, 0) ' Redimensionner Tableau BDD
'Remplissage du tableau dynamique de destinataires 1 :
For Tab_Ligne = 0 To UBound(Destinataires1)
Destinataires1(Tab_Ligne, 0) = Worksheets("Destinataires 1").Range("C" & Tab_Ligne + 1) ' Colonne adresse mail
'Destinataires1(Tab_Ligne, 1) = Range("A" & Tab_Ligne + 1) ' Colonne prénom
'Destinataires1(Tab_Ligne, 2) = Range("B" & Tab_Ligne + 1) ' Colonne nom
Next
'Bornes du tableau de destinataires 2:
DerLigne = Worksheets("Destinataires 2").Range("A" & Rows.Count).End(xlUp).Row
ReDim Destinataires2(DerLigne, 2) ' Redimensionner Tableau BDD
'Remplissage du tableau dynamique de destinataires 2 :
For Tab_Ligne = 0 To UBound(Destinataires2)
Destinataires2(Tab_Ligne, 0) = Worksheets("Destinataires 2").Range("C" & Tab_Ligne + 1) ' Colonne adresse mail
'Destinataires2(Tab_Ligne, 1) = Range("A" & Tab_Ligne + 1) ' Colonne prénom
'Destinataires2(Tab_Ligne, 2) = Range("B" & Tab_Ligne + 1) ' Colonne nom
Next
Sujet1 = "CR réunion 1"
Sujet2 = "CR réunion 2"
AccuseReception = True
'Nom de la Feuille à envoyer
'ThisWorkbook.Sheets("CR réunion 1").Copy
'ThisWorkbook.Sheets("CR réunion 2").Copy
'Worksheets("Destinataires 1").Range("A1:N49").Copy
'Worksheets("Destinataires 2").Range("A1:N49").Copy
'ActiveWorkbook.SendMail Destinataires1, Sujet1, AccuseReception
'ActiveWorkbook.SendMail Destinataires2, Sujet2, AccuseReception
'ActiveWorkbook.Close False
' ------------------------------------------------
' Transforme le tableau Destinataires1 et Destinataires1 en deux chaines séparées
' par des points-virgules:
Dim Dest1 As String
Dim Dest2 As String
Dim i As Integer
For i = 1 To UBound(Destinataires1) - 1
Dest1 = Dest1 & IIf(Dest1 = "", "", ";") & Destinataires1(i, 0)
Next i
For i = 1 To UBound(Destinataires2) - 1
Dest2 = Dest2 & IIf(Dest2 = "", "", ";") & Destinataires2(i, 0)
Next i
' Transforme la plage CR réunion 1 en une mémoire et génère le message:
Dim CR1 As String
Call Mail_PlageExcel(CR1, Worksheets("CR réunion 1").Range("A1:N49"), Alignement_Gauche)
Call Mail_Envoyer(CR1, False, Dest1, Sujet1) ' -> False pour afficher, ou True pour envoyer.
' Idem pour la plage CR réunion 2:
Dim CR2 As String
Call Mail_PlageExcel(CR2, Worksheets("CR réunion 2").Range("A1:N49"), Alignement_Gauche)
Call Mail_Envoyer(CR2, False, Dest2, Sujet2) ' -> False pour afficher, ou True pour envoyer.
End Sub |
Partager