Bonjour,
J'ai un probleme avec mon code qui necessite votre aide. Il s'agit d'un userform ou je coche une ou plusieurs entreprises pour leur envoyer chacune leur résultat sous format pdf par mail. J'ai un fichier excel ou chaque onglet correspond à une entreprise. J'ai réussi à enregistrer en pdf. Cependant lorsque je coche 2 entreprises (par exemple les entreprise 1 et 2), un seul mail apparaît destiné à l'entreprise 2 (la dernière cochée) mais avec en pj les fichiers pdf de l'entreprise 1 ET 2.
Je veux pouvoir envoyer un mail à chaque entreprise avec son fichier pdf correspondant en pj. Donc si je coche les entreprises 1,2 et 3, il faudrait que 3 mails s'affichent avec dans le 1er mail, le pdf de l'entreprise 1; dans le 2ème: le pdf de l'entreprise 2; et dans le 3e: le pdf de l'entreprise 3 etc etc
Merci pour votre aide!
Voici mon code (pour 2 entreprises):
Private Sub CommandButton1_Click()
Dim Mois As String
Mois = Format(Now, "mmmm" )
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application" )
Set OutMail = OutApp.CreateItem(0)
'enregistre en PDF
If CheckBox1.Value = True Then
Worksheets("Entreprise1" ).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"\\Résultats 2014\Envoi Résultats\Résultats Entreprise1" & "-" & Mois & "-" & Year(Date) & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
On Error Resume Next
With OutMail
.To = Worksheets("Entreprise1" ).Range("N11" ) & "; " & Worksheets("Entreprise1" ).Range("N12" )
.Subject = "Résultats du mois de " & Mois & " - " & Worksheets("Entreprise1" ).Range("K10" ).Value
.Body = "Bonjour"
.Attachments.Add ("\\Résultats 2014\Envoi Résultats\Résultats Entreprise1" & "-" & Mois & "-" & Year(Date) & ".pdf" )
.Display
End With
End If
If CheckBox2.Value = True Then
Worksheets("Entreprise2" ).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
"\\Résultats 2014\Envoi Résultats\Résultats Entreprise2" & "-" & Mois & "-" & Year(Date) & ".pdf", Quality:= _
xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
OpenAfterPublish:=False
On Error Resume Next
With OutMail
.To = Worksheets("Entreprise2" ).Range("N11" ) & "; " & Worksheets("Entreprise2" ).Range("N12" )
.Subject = "Résultats du mois de " & Mois & " - " & Worksheets("Entreprise2" ).Range("K10" ).Value
.Body = "Bonjour"
.Attachments.Add ("\\Résultats 2014\Envoi Résultats\Résultats Entreprise2" & "-" & Mois & "-" & Year(Date) & ".pdf" )
.Display
End With
End If
Set OutMail = Nothing
Set OutApp = Nothing
Unload UserForm1
End Sub
Private Sub CommandButton2_Click()
Unload UserForm1
End Sub
Message édité par chol44 le 27-03-2014 à 16:11:01