OVH Cloud OVH Cloud

Macro envoyer un mail

10 réponses
Avatar
Perceval973
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse pré-remplie
etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai tenté
d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis

10 réponses

Avatar
papou
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des réponses.

Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse pré-remplie
etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai tenté
d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis




Avatar
Perceval973
J'ai trouvé les messages, je vais les lire de ce pas...
Merci

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des réponses.

Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse
pré-remplie


etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai
tenté


d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis








Avatar
jps
regarde la ficelle Envoi par Email d'hier, perceval973, où papou est
beaucoup intervenu...
jps

"Perceval973" a écrit dans le message de
news:411389e0$0$1895$
J'ai trouvé les messages, je vais les lire de ce pas...
Merci

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des
réponses.



Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse
pré-remplie


etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai
tenté


d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis












Avatar
Perceval973
J'ai parcouru tout le fil mais c'est trop compliqué pour moi qui n'ai aucune
connaissance en VBA. Je n'arrive pas a raccrocher les bouts de macros, les
commandes, les variables etc...

J'ai trouvé cette macro (ci-dessous) sur Internet, elle me convient bien,
mais j'aimerais remplacer la ligne {.Attachments.Add
CheminNomdufichier.xls} par quelque chose genre "fichier actuellement
actif et ouvert" car je ne souhaite pas que le destinataire du mail
connaisse la structure de mes répertoires.
Est-ce possible ?

De plus j'aimerais mettre plusieurs personnes en copie, mais je ne parviens
pas a le faire. Ni en mettant plusieurs lignes {.CC = Range("BXX").Value}ni
en essayant de mettre plusieurs adresses E-mail dans la cellule de
référence...
Avez-vous une solution ?

Merci pour votre aide
Régis

-------------------------------------------------------------------------
Sub SendMail_Outlook()

'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools /
Reference / Cocher "Microsoft Outlook Library"

Application.ScreenUpdating = False
Sheets("Outlook").Select


Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String

Set Ol = New Outlook.Application
Set Olmail = Ol.CreateItem(olMailItem)
With Olmail
.To = Range("B1").Value
.CC = Range("B4").Value
.Subject = Range("B2").Value
.Body = Range("B3").Value
.Attachments.Add "CheminNomdufichier.xls"
.Display '.Send
'On peut switcher entre .send et .display selon que l'on veut envoyer le
mail (send) ou seulement le préparer et le vérifier(display)
End With

Sheets("Planning Productions Dépôts").Select
Range("A1").Select
Application.ScreenUpdating = True

End Sub
-------------------------------------------------------------------------

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des réponses.

Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse
pré-remplie


etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai
tenté


d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis








Avatar
jps
bonjour régis
je crois que tu te mets le doigt dans l'oeil en voulant céler la structure
de tes répertoires car si tu regardes bien, lorsqu'une pièce jointe t'arrive
par émile, il y a le chemin complet du fichier...
ceci dit, pour ta question tu mets :

Attachments.Add (ActiveWorkbook.Full name)

et ça devrait faire la rue michel
jps
PS si je m'a gouré, papou veille au grain et saura me rectifier

"Perceval973" a écrit dans le message de
news:41139e8d$0$1897$
J'ai parcouru tout le fil mais c'est trop compliqué pour moi qui n'ai
aucune

connaissance en VBA. Je n'arrive pas a raccrocher les bouts de macros, les
commandes, les variables etc...

J'ai trouvé cette macro (ci-dessous) sur Internet, elle me convient bien,
mais j'aimerais remplacer la ligne {.Attachments.Add
CheminNomdufichier.xls} par quelque chose genre "fichier actuellement
actif et ouvert" car je ne souhaite pas que le destinataire du mail
connaisse la structure de mes répertoires.
Est-ce possible ?

De plus j'aimerais mettre plusieurs personnes en copie, mais je ne
parviens

pas a le faire. Ni en mettant plusieurs lignes {.CC Range("BXX").Value}ni
en essayant de mettre plusieurs adresses E-mail dans la cellule de
référence...
Avez-vous une solution ?

Merci pour votre aide
Régis

-------------------------------------------------------------------------
Sub SendMail_Outlook()

'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools /
Reference / Cocher "Microsoft Outlook Library"

Application.ScreenUpdating = False
Sheets("Outlook").Select


Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String

Set Ol = New Outlook.Application
Set Olmail = Ol.CreateItem(olMailItem)
With Olmail
.To = Range("B1").Value
.CC = Range("B4").Value
.Subject = Range("B2").Value
.Body = Range("B3").Value
.Attachments.Add "CheminNomdufichier.xls"
.Display '.Send
'On peut switcher entre .send et .display selon que l'on veut envoyer le
mail (send) ou seulement le préparer et le vérifier(display)
End With

Sheets("Planning Productions Dépôts").Select
Range("A1").Select
Application.ScreenUpdating = True

End Sub
-------------------------------------------------------------------------

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des
réponses.



Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse
pré-remplie


etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai
tenté


d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis












Avatar
Papou
Re
- Pour le nom du fichier je confirme ce que t'a dit jps mais en modifiant
très légèrement sa ligne ;-)
Attachments.Add (ActiveWorkbook.Fullname) 'il n'y a pas d'espace entre Full
et name ou bien aussi ActiveWorkbook.Name plus simplement
- Pour plusieurs destinataires en copie tu ajoutes ceci avant la ligne
*.Send* :
Dim Encopie As Recipient
Set Encopie = .Recipients.Add Array("","")
Encopie.Type = olCC

Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41139e8d$0$1897$
J'ai parcouru tout le fil mais c'est trop compliqué pour moi qui n'ai
aucune

connaissance en VBA. Je n'arrive pas a raccrocher les bouts de macros, les
commandes, les variables etc...

J'ai trouvé cette macro (ci-dessous) sur Internet, elle me convient bien,
mais j'aimerais remplacer la ligne {.Attachments.Add
CheminNomdufichier.xls} par quelque chose genre "fichier actuellement
actif et ouvert" car je ne souhaite pas que le destinataire du mail
connaisse la structure de mes répertoires.
Est-ce possible ?

De plus j'aimerais mettre plusieurs personnes en copie, mais je ne
parviens

pas a le faire. Ni en mettant plusieurs lignes {.CC Range("BXX").Value}ni
en essayant de mettre plusieurs adresses E-mail dans la cellule de
référence...
Avez-vous une solution ?

Merci pour votre aide
Régis

-------------------------------------------------------------------------
Sub SendMail_Outlook()

'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools /
Reference / Cocher "Microsoft Outlook Library"

Application.ScreenUpdating = False
Sheets("Outlook").Select


Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String

Set Ol = New Outlook.Application
Set Olmail = Ol.CreateItem(olMailItem)
With Olmail
.To = Range("B1").Value
.CC = Range("B4").Value
.Subject = Range("B2").Value
.Body = Range("B3").Value
.Attachments.Add "CheminNomdufichier.xls"
.Display '.Send
'On peut switcher entre .send et .display selon que l'on veut envoyer le
mail (send) ou seulement le préparer et le vérifier(display)
End With

Sheets("Planning Productions Dépôts").Select
Range("A1").Select
Application.ScreenUpdating = True

End Sub
-------------------------------------------------------------------------

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des
réponses.



Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse
pré-remplie


etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai
tenté


d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis












Avatar
jps
merdum....l'espace n'a pas été mis esqueprès...désolé, perceval973 (c'est le
nombre de coups de fouet dont je m'auto-flagelle sur le champ) et merci à
papou d'avoir relevé ce lapsus vbae...
jps (qui a parlé aussi à tort de STXT au lieu de TEXTE dans une formule et
qui comptait sur toi, papou, pour le rectificationner)

"Papou" a écrit dans le message de
news:
Re
- Pour le nom du fichier je confirme ce que t'a dit jps mais en modifiant
très légèrement sa ligne ;-)
Attachments.Add (ActiveWorkbook.Fullname) 'il n'y a pas d'espace entre
Full

et name ou bien aussi ActiveWorkbook.Name plus simplement
- Pour plusieurs destinataires en copie tu ajoutes ceci avant la ligne
*.Send* :
Dim Encopie As Recipient
Set Encopie = .Recipients.Add Array("","")
Encopie.Type = olCC

Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41139e8d$0$1897$
J'ai parcouru tout le fil mais c'est trop compliqué pour moi qui n'ai
aucune

connaissance en VBA. Je n'arrive pas a raccrocher les bouts de macros,
les


commandes, les variables etc...

J'ai trouvé cette macro (ci-dessous) sur Internet, elle me convient
bien,


mais j'aimerais remplacer la ligne {.Attachments.Add
CheminNomdufichier.xls} par quelque chose genre "fichier actuellement
actif et ouvert" car je ne souhaite pas que le destinataire du mail
connaisse la structure de mes répertoires.
Est-ce possible ?

De plus j'aimerais mettre plusieurs personnes en copie, mais je ne
parviens

pas a le faire. Ni en mettant plusieurs lignes {.CC > Range("BXX").Value}ni
en essayant de mettre plusieurs adresses E-mail dans la cellule de
référence...
Avez-vous une solution ?

Merci pour votre aide
Régis



-------------------------------------------------------------------------
Sub SendMail_Outlook()

'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools /
Reference / Cocher "Microsoft Outlook Library"

Application.ScreenUpdating = False
Sheets("Outlook").Select


Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String

Set Ol = New Outlook.Application
Set Olmail = Ol.CreateItem(olMailItem)
With Olmail
.To = Range("B1").Value
.CC = Range("B4").Value
.Subject = Range("B2").Value
.Body = Range("B3").Value
.Attachments.Add "CheminNomdufichier.xls"
.Display '.Send
'On peut switcher entre .send et .display selon que l'on veut envoyer le
mail (send) ou seulement le préparer et le vérifier(display)
End With

Sheets("Planning Productions Dépôts").Select
Range("A1").Select
Application.ScreenUpdating = True

End Sub


-------------------------------------------------------------------------

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des
réponses.



Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse
pré-remplie


etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai
tenté


d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton
d'excel




"envoyer un message"

Merci pour votre aide
Régis
















Avatar
Ricky [MVP]
Bonjour *Perceval973* (et tous les lecteurs)

| J'ai trouvé cette macro (ci-dessous) sur Internet, elle me convient
| bien, mais j'aimerais remplacer la ligne {.Attachments.Add
| CheminNomdufichier.xls} par quelque chose genre "fichier
| actuellement actif et ouvert" car je ne souhaite pas que le
| destinataire du mail connaisse la structure de mes répertoires.
| Est-ce possible ?

Une idée non testée : tu assignes une lettre de lecteur (Z:) au dossier qui contient le fichier
Tu vas chercher sur Z:
(vérifie quand même que Windows ne remplace pas le nom unc par le chemin complet ...)

--
Ricky [MVP] Visitez les faq....
http://www.faqoe.com http://faqword.free.fr
http://dj.joss.free.fr/faq.htm http://www.excelabo.net
Avatar
Perceval973
Merci à tous, je testerais ca des lundi au bureau (parcequ'a la maison j'ai
pas Outlook)

Bon week end :-)

"Perceval973" a écrit dans le message de
news:41139e8d$0$1897$
J'ai parcouru tout le fil mais c'est trop compliqué pour moi qui n'ai
aucune

connaissance en VBA. Je n'arrive pas a raccrocher les bouts de macros, les
commandes, les variables etc...

J'ai trouvé cette macro (ci-dessous) sur Internet, elle me convient bien,
mais j'aimerais remplacer la ligne {.Attachments.Add
CheminNomdufichier.xls} par quelque chose genre "fichier actuellement
actif et ouvert" car je ne souhaite pas que le destinataire du mail
connaisse la structure de mes répertoires.
Est-ce possible ?

De plus j'aimerais mettre plusieurs personnes en copie, mais je ne
parviens

pas a le faire. Ni en mettant plusieurs lignes {.CC Range("BXX").Value}ni
en essayant de mettre plusieurs adresses E-mail dans la cellule de
référence...
Avez-vous une solution ?

Merci pour votre aide
Régis

-------------------------------------------------------------------------
Sub SendMail_Outlook()

'Avant de lancer cette macro, Dans l'éditeur VBA: Faire Menu / Tools /
Reference / Cocher "Microsoft Outlook Library"

Application.ScreenUpdating = False
Sheets("Outlook").Select


Dim Ol As New Outlook.Application
Dim Olmail As MailItem
Dim CurrFile As String

Set Ol = New Outlook.Application
Set Olmail = Ol.CreateItem(olMailItem)
With Olmail
.To = Range("B1").Value
.CC = Range("B4").Value
.Subject = Range("B2").Value
.Body = Range("B3").Value
.Attachments.Add "CheminNomdufichier.xls"
.Display '.Send
'On peut switcher entre .send et .display selon que l'on veut envoyer le
mail (send) ou seulement le préparer et le vérifier(display)
End With

Sheets("Planning Productions Dépôts").Select
Range("A1").Select
Application.ScreenUpdating = True

End Sub
-------------------------------------------------------------------------

"papou" <cestpasbonprobin@çanonpluscg44.fr> a écrit dans le message de
news:
Bonjour
Fais une recherche de "mail" dans ce groupe et tu trouveras des
réponses.



Cordialement
Pascal

"Perceval973" a écrit dans le message de
news:41138295$0$1903$
Bonjour a tous,

Est-il possible d'envoyer un mail grace a une macro ?
Avec un message d'accompagnement, le fichier joint, l'adresse
pré-remplie


etc...

J'ai un fichier que j'envoie tous les jours à la meme personne, j'ai
tenté


d'enregistrer une macro, mais je n'ai réussi qu'a ouvrir l'outil de
messagerie (Outlook) ce que fait tres bien tout seul le bouton d'excel
"envoyer un message"

Merci pour votre aide
Régis












Avatar
AV
Heu ...mon grain :
Si ne vous repreniez pas l'intégralité du mess (en plus en html) pour répondre
"je vous remercie infiniment" on s'économiserait un fil d'une série de 40ko...
Juste pour montrer qu'on fait pas comme sur usenet ;-)

AV>