Bonjour à tous,
Je viens vers vous ce matin pour demander votre sur un projet. J'ai un tableau contenu dans une feuille nommée "Résumé", je souhaiterais tout d'abord effectuer un filtre sur la colonne "L" des lignes du tableau contenant le critère "Vrai". Ensuite faire une capture écran du tableau filtré et insérer dans le corps d'un Email pour envoi.
Le mail devra etre envoyer automatiquement à l'ouverture du fichier.
Je suis pas callé en VBA mais j'essaie d'adapter ce code que j'ai retrouver sur internet à mon modele :
Je bloque cependnat sur cette ligne de code avec l'erreur 424
Si vous pouviez m'aider à résoudre cela ca serait TOP. Merci d'avance
Le fichier en question
Je viens vers vous ce matin pour demander votre sur un projet. J'ai un tableau contenu dans une feuille nommée "Résumé", je souhaiterais tout d'abord effectuer un filtre sur la colonne "L" des lignes du tableau contenant le critère "Vrai". Ensuite faire une capture écran du tableau filtré et insérer dans le corps d'un Email pour envoi.
Le mail devra etre envoyer automatiquement à l'ouverture du fichier.
Je suis pas callé en VBA mais j'essaie d'adapter ce code que j'ai retrouver sur internet à mon modele :
VB:
Sub Filtrer_colonne_L_et_envoyer_email()
'Activer la feuille contenant le tableau
Sheets("Resumé").Activate
'Définir le tableau
Dim Tableau As ListObject
Set Tableau = ActiveSheet.ListObjects("Tableau_resume")
'Appliquer le filtre sur la colonne L avec le critère spécifié
Tableau.Range.AutoFilter Field:=11, Criteria1:="Vrai"
'Copier le tableau filtré en tant qu'image
Dim img As Picture
Set img = Tableau.Range.CopyPicture(xlScreen, xlPicture)
'Coller l'image dans le corps d'un nouvel e-mail
Dim OutApp As Object
Dim OutMail As Object
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = "aa@gmail.com"
.Subject = "Tableau filtré"
.HTMLBody = "<html><body><p>Le tableau filtré est ci-dessous:</p>" & _
"<p><img src='cid:tableau'></p></body></html>"
.Display
End With
'Ajouter l'image en tant que pièce jointe et définir son nom en tant que "tableau_filtre.png"
Dim chemin_image As String
chemin_image = Environ("temp") & "\" & "tableau_filtre.png"
img.Copy
With OutMail
.Attachments.Add chemin_image, olByValue, 0
.Attachments.Item(1).DisplayName = "tableau_filtre.png"
.HTMLBody = Replace(.HTMLBody, "cid:tableau", .Attachments.Item(1).PropertyAccessor.BinaryToString(.Attachments.Item(1).PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x3712001F")))
.Display
End With
'Effacer le filtre
Tableau.Range.AutoFilter
End Sub
Je bloque cependnat sur cette ligne de code avec l'erreur 424
Si vous pouviez m'aider à résoudre cela ca serait TOP. Merci d'avance
Le fichier en question