Bonjour à tous,

Depuis quelques temps, j'essaye de mettre au point une macro qui puisse me préparer mes emails de facturation.
Toute la partie création d'email, ajout automatique des destinataires, des CC, du titre et du corps de l'email fonctionne très bien ; il ne manque maintenant plus que la partie pièces jointes.

Pour donner du contexte, un destinataire peut avoir une ou plusieurs pièces jointes.
J'ai donc suivi les conseils donnés sur ce forum, et j'ai gardé toutes les informations dans un tableau structuré.
Il y a donc des colonnes Facture1, Facture2, Facture3... où est gardée l'adresse de la facture sur le PC

j'ai ajouté une condition au cas où la cellule est vide, mais malgré ça, j'ai un message d'erreur lorsque je fais tourner la macro (Erreur d'exécution 2147024894 80070002, Fichier introuvable).
Le débogage s'arrête sur : If Range("t_ANG[Facture1]")(i).Value <> "" Then

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
 
Sub BoutonAng_Cliquer()
Dim OL As Object
Dim Texte As String
Dim Ligne As Long
Dim MiseEnCopie As String
 
Ligne = 5
MiseEnCopie = Range("L2")
Set OL = CreateObject("Outlook.Application")
    While Range("C" & Ligne) <> ""
        With OL.CreateItem(0)
            Dest = Range("E" & Ligne) & " ; " & Range("F" & Ligne) & " ; " & Range("G" & Ligne)
            Sujet = Range("I" & Ligne)
            Texte = Range("H" & Ligne) & vbCrLf & vbCrLf
            Texte = Texte & Range("J" & Ligne) & vbCrLf & vbCrLf
            Texte = Texte & "Should you require any additional information, please do not hesitate to contact me." & vbCrLf & vbCrLf
            Texte = Texte & "Best regards," & vbCrLf & vbCrLf
            Texte = Texte & "Camille Robert" & vbCrLf
 
 
 
            .To = Dest
            .CC = MiseEnCopie
            .Subject = Sujet
            .Body = Texte
            .OriginatorDeliveryReportRequested = True 'confirmation de réception
            .Importance = 2
 
            For i = 5 To Range("t_ANG").Rows.Count
                If Range("t_ANG[Facture1]")(i).Value <> "" Then
                .Attachments.Add Range("t_ANG[Facture1]")(i).Value
                End If
                If Range("t_ANG[Facture2]")(i).Value <> "" Then
                .Attachments.Add Range("t_ANG[Facture2]")(i).Value
                End If
            Next i
 
            .Display
            '.Send envoi automatique
            Ligne = Ligne + 1
        End With
    Wend
 
End Sub
Je suis sûre que l'adresse de la pièce jointe est correcte (lorsque je copie l'adresse dans mes documents, ça me l'ouvre directement), donc je ne suis pas certaine de l'origine du problème...

Merci d'avance pour toute aide,

Camille