Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

VBA: Envoyer un email par Gmail avec feuilles en pièces jointes

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

GuillaumA

XLDnaute Occasionnel
EDIT : Fichier Disponible page 3 : Post #35


Cordialement,
Guillaume A.
 
Dernière édition:
Re : VBA: Envoyer un email par Gmail avec feuilles en pièces jointes

Re 🙂,
Je ne sais pas si tu lis bien toutes les réponses que tu as 😡...
Je t'ai donné la solution pour grouper les pièces jointes au #24 🙄.
Bonne journée 😎
 
Re : VBA: Envoyer un email par Gmail avec feuilles en pièces jointes

Salut JNP,
Mea Culpa je n'avais pas vu la première partie de ce message!

Cela donne:
Code:
Sub EnvoyerMail()

Dim i As Integer
Dim NomDeLaFeuille As String
Dim NomDesClasseurs(1 To 11)
Dim ZonePJ As Range
Set ZonePJ = Range("C18:D28")

For i = 18 To 28
    If Not IsEmpty(Range("C" & i)) And Range("D" & i) = "OK" Then
    NomDeLaFeuille = Range("C" & i)
    NomDesClasseurs(i - 15 + 1) = "C:\Documents and Settings\user\Mes documents\" & NomDeLaFeuille & ".xls"
    ThisWorkbook.Sheets(NomDeLaFeuille).Copy
    ActiveWorkbook.SaveAs ("C:\Documents and Settings\user\Mes documents\" & NomDeLaFeuille)
    ActiveWorkbook.Close
    End If

Next i

Call SendMailCDO(NomDesClasseurs)

For i = 1 To 11
    If NomDesClasseurs(i) <> "" Then Kill NomDesClasseurs(i)
Next
ZonePJ.ClearContents

Code:
End Sub
 Sub SendMailCDO()


Dim D As String
Dim CC As String
Dim E As String
Dim S As String
Dim T As String

D = Range("C33").Value
CC = Range("C35").Value
E = Range("C15").Value
S = Range("C3").Value
T = Range("C6").Value & Chr(10) & Chr(10) & Range("C9").Value

Dim Cdo_Message As New CDO.Message
Set Cdo_Message.Configuration = GetSMTPServerConfig()
With Cdo_Message
.To = D
.CC = CC
.From = E
.Subject = S
.TextBody = T
For i = 1 To 11
    If NomDesClasseurs(i) <> "" Then .AddAttachment NomDesClasseurs(i)
Next

.send

End With

success = MsgBox(nbmessages & " envoyés avec succès !", vbInformation)

Exit Sub
SMTPSendMail_Err:
    'Gestion des erreurs
    tmp = MsgBox("Erreur lors de l'envoi de votre message." & Chr(10) & "Détails : " & Err.Description, vbCritical)


End Sub

J'ai un message d'erreur:
Erreur de compilation:
Nombre d'arguments incorrect ou affectation de propriété incorrect

je désespère...
 
Re : VBA: Envoyer un email par Gmail avec feuilles en pièces jointes

Re,
Le ventre plein on voit mieux ce que l'on a oublié!

Voici le fichier final !
Ca serait bien de faire évoluer ce fichier. Il y a plein de choses qui peuvent être rajoutées. Comme par exemple la recherche en pièce jointe des feuilles non pas uniquement du classeur actif mais de n'importe quel classeur qu'on aurait sélectionné préalablement.
Ou encore envoyer aussi des classeurs.
Ou encore la possibilité de choisir la messagerie à employer.
Etc...


Actuellement:
- Possibilité d'envoyer à plusieurs des mail à plusieurs destinataires avec CC
- Possibilité d'envoyer plusieurs feuilles du classeur actif
- Etc...


Un grand merci à JNP et Hasco sans qui.. bah j'aurais pas pu le faire! 😛

Cordialement,
Guillaume A.
 

Pièces jointes

Dernière édition:
Re : Envoyer feuille excel par mail (gmail)

Bonjour,

j'ai utilisé votre travail et cela fonctionne parfaitement pour un classeur différent de celui qui pilote l'envoi par gmail.

Je souhaiterais envoyer par gmail le classeur ou la feuille courante.

Pouvez-vous m'indiquer une piste ?




 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
2
Affichages
171
Réponses
12
Affichages
717
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…