XL 2016 Envoyer un fichier excel par email via outlook

rayms

XLDnaute Nouveau
Bonjour à tous,
Je cherche à envoyer un fichier excel par email
J'ai réalisé une macro, qui me donne aucune erreur lors de son lancement, mais je ne reçois aucun email en pièce jointe
Je suis perdu, pouvez vous m’apporter votre aide
Très cordialement RZ
Voici la macro
PS : Dans VBA j'ai coché dans le menu Outils --> Références --> Microsoft Outlook 16.0 ObjectLibrary
Sub envoiMail()
Dim Fichier As Variant

'Le programme ouvre une fenêtre ou l'on sélectionne le fichier'
Fichier = Application.GetOpenFilename("Tous les fichiers(*.*),*.*")

MsgBox Fichier

'Ici on demande d'utilisé Outlook come client de messagerie'
Dim MaMessagerie As Object
Dim MonMessage As Object
Set MaMessagerie = CreateObject("Outlook.Application")
Set MonMessage = MaMessagerie.createitem(0)

'Ici nous définissons les champs du mail'
'Adresse mail donnés en exemple'

MonMessage.To = "xxxxx.xxxxxx@gmail.com"
MonMessage.CC = "xxxxx.xxxxx@numericable.fr"
'MonMessage.CCI = ""'

'Ici nous commençons la rédaction du mail'
MonMessage.Attachments.Add Fichier

'Sujet du mail'
MonMessage.Subject = "Test envoi PJ par VBA"

'Corps du mail'
contenu = "Bonjour,"
contenu = contenu & Chr(10) & Chr(13)

'Les caractères CH indique un saut de ligne'
contenu = contenu & "Veuiller trouver en pièce jointe le fichier " & Chr(10) & Chr(13)
contenu = contenu & "Cordialement" & Chr(10) & Chr(13)
contenu = contenu & "R.TOTO" & Chr(10) & Chr(13)
MonMessage.Body = "contenu"
contenu = contnu & "Ci-joint le fichier."
MonMessage.Body = contenu

'Ici on provoque l'envoi du mail et sa pièce jointe'
MonMessage.Sent

'Réinitialisation de la messagerie'
Set MaMessagerie = Nothing

'Boite de dialogue qui confirme l'envoi du message et de sa pièce jointe'
MsgBox "Confirmation de l'envoi du message"

End Sub
 

rayms

XLDnaute Nouveau
Daniel,
Grand merci pour t-on aide ;)
L'envoi est fonctionnel et accompagner de sa pièce jointe !
Je ne voudrais pas abuser de vos compétence, mais j'ai encore une petite question
Toujours à la recherche d'une meilleur automatisation de l'envoi
Est il possible d'envoyer un fichier excel de façon automatique et journalière et à heure fixe ?
Merci pour cette aide précieuse
Raymond
 

danielco

XLDnaute Accro
Mets ce code dans le module "ThisWorkbook" :

VB:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
  On Error Resume Next
  Application.OnTime Intervalle, "envoiMail", , False
  On Error GoTo 0
End Sub

Private Sub Workbook_Open()
  heure = Date + TimeValue("12:30:00")
  Application.OnTime heure, "envoiMail"
End Sub

Remplace "121:30:00" par l'heure voulue de l'envoi.

Daniel
 

rayms

XLDnaute Nouveau
Daniel
j'ai bien mis la macro dans le module "ThisWorkbook"
Mais à 15h aucun lancement automatique
Comment ce type de macro peut passer au dessus d'un déclenchement manuel
Peut être une interférence avec le module 1 ?

1577455485700.png
 

Discussions similaires

Statistiques des forums

Discussions
312 027
Messages
2 084 758
Membres
102 655
dernier inscrit
STA82700