Bonjoir(c) Oliv'JIEL tu veux adapter quoi au juste ? envoyer le classeur ou le
document actif ?
Tout ! ;-)
le PC aussi ? ;-))
Ca risque de faire un peu gros en PJ, non ? ;-))))))
Beaucoup de macroteurs se heurtent à se soucis de sécurité, je
voudrais bien mettre sur la FAQ des macros pour les différents
logiciels de la suite office permettant d'envoyer "je_ne_sé_koi"
sans tomber sur la sécurité d'outlook.
En général moi je passe par l'enregistrement du fichier (quel qu'il
soit word excel PDF ) dans un répertoire (et que l'on supprimera par
un kill à la fin)puis son ajout dans le mail en utilisant au choix :
Certes, mais des fois les destinataires doivent travailler avec ce
fichier.
Outlook Automation
(http://www.3stone.be/access/articles.php?lng=fr&pg) mais en
faisant un .display au lieu de .send de ce fait là pas d'avertissement
car il faut cliquer sur envoyer
dans OUTLOOK et la personne peut ajouter des éléments au mail avant
son envoi.
Pas bêteSinon il faut utiliser CDO
(http://www.3stone.be/access/articles.php?lng=fr&pg)
Vi...Quant c'est un .DOC je remplace avant les CHAMPS par leur valeur,
With ActiveDocument.Fields
.Update
.unlink
End With
Là je comprend pas pourquoi ?
On pourrait aussi supprimer les métadonnées !
Par macro ?
Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Tu as ça en stock ?
J'ai des truc assez personnalisés je vais voir ce que je peux faire.
Si non, ça s'écrit facilement ?
vui
Merci d'avance
you're welcome
Bonjoir(c) Oliv'
JIEL tu veux adapter quoi au juste ? envoyer le classeur ou le
document actif ?
Tout ! ;-)
le PC aussi ? ;-))
Ca risque de faire un peu gros en PJ, non ? ;-))))))
Beaucoup de macroteurs se heurtent à se soucis de sécurité, je
voudrais bien mettre sur la FAQ des macros pour les différents
logiciels de la suite office permettant d'envoyer "je_ne_sé_koi"
sans tomber sur la sécurité d'outlook.
En général moi je passe par l'enregistrement du fichier (quel qu'il
soit word excel PDF ) dans un répertoire (et que l'on supprimera par
un kill à la fin)puis son ajout dans le mail en utilisant au choix :
Certes, mais des fois les destinataires doivent travailler avec ce
fichier.
Outlook Automation
(http://www.3stone.be/access/articles.php?lng=fr&pg) mais en
faisant un .display au lieu de .send de ce fait là pas d'avertissement
car il faut cliquer sur envoyer
dans OUTLOOK et la personne peut ajouter des éléments au mail avant
son envoi.
Pas bête
Sinon il faut utiliser CDO
(http://www.3stone.be/access/articles.php?lng=fr&pg)
Vi...
Quant c'est un .DOC je remplace avant les CHAMPS par leur valeur,
With ActiveDocument.Fields
.Update
.unlink
End With
Là je comprend pas pourquoi ?
On pourrait aussi supprimer les métadonnées !
Par macro ?
Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Tu as ça en stock ?
J'ai des truc assez personnalisés je vais voir ce que je peux faire.
Si non, ça s'écrit facilement ?
vui
Merci d'avance
you're welcome
Bonjoir(c) Oliv'JIEL tu veux adapter quoi au juste ? envoyer le classeur ou le
document actif ?
Tout ! ;-)
le PC aussi ? ;-))
Ca risque de faire un peu gros en PJ, non ? ;-))))))
Beaucoup de macroteurs se heurtent à se soucis de sécurité, je
voudrais bien mettre sur la FAQ des macros pour les différents
logiciels de la suite office permettant d'envoyer "je_ne_sé_koi"
sans tomber sur la sécurité d'outlook.
En général moi je passe par l'enregistrement du fichier (quel qu'il
soit word excel PDF ) dans un répertoire (et que l'on supprimera par
un kill à la fin)puis son ajout dans le mail en utilisant au choix :
Certes, mais des fois les destinataires doivent travailler avec ce
fichier.
Outlook Automation
(http://www.3stone.be/access/articles.php?lng=fr&pg) mais en
faisant un .display au lieu de .send de ce fait là pas d'avertissement
car il faut cliquer sur envoyer
dans OUTLOOK et la personne peut ajouter des éléments au mail avant
son envoi.
Pas bêteSinon il faut utiliser CDO
(http://www.3stone.be/access/articles.php?lng=fr&pg)
Vi...Quant c'est un .DOC je remplace avant les CHAMPS par leur valeur,
With ActiveDocument.Fields
.Update
.unlink
End With
Là je comprend pas pourquoi ?
On pourrait aussi supprimer les métadonnées !
Par macro ?
Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Tu as ça en stock ?
J'ai des truc assez personnalisés je vais voir ce que je peux faire.
Si non, ça s'écrit facilement ?
vui
Merci d'avance
you're welcome
Ca risque de faire un peu gros en PJ, non ? ;-))))))
ah c'est pas un portable ? ;-))
En général moi je passe par l'enregistrement du fichier (quel qu'il
soit word excel PDF ) dans un répertoire (et que l'on supprimera par
un kill à la fin)puis son ajout dans le mail en utilisant au choix :
Certes, mais des fois les destinataires doivent travailler avec ce
fichier.
je comprends pas, le destinataire recevra bien le fichier au format natif
Quant c'est un .DOC je remplace avant les CHAMPS par leur valeur,
With ActiveDocument.Fields
.Update
.unlink
End With
Là je comprend pas pourquoi ?
parce que si tu as un champ NomUtilisateur quand je te l'envoi il sera bien
a Oliv'
mais quand tu l'ouvriras il deviendra Jièl idem avec des dates.
On pourrait aussi supprimer les métadonnées !
Par macro ?
J'ai pas essayé mais j'ai téléchargé un jour l'outil de suppression de
métadonnés de µsoft et on peut l'utiliser en ligne de commande
donc à priori pas de pb
J'ai des truc assez personnalisés je vais voir ce que je peux faire.
Ca risque de faire un peu gros en PJ, non ? ;-))))))
ah c'est pas un portable ? ;-))
En général moi je passe par l'enregistrement du fichier (quel qu'il
soit word excel PDF ) dans un répertoire (et que l'on supprimera par
un kill à la fin)puis son ajout dans le mail en utilisant au choix :
Certes, mais des fois les destinataires doivent travailler avec ce
fichier.
je comprends pas, le destinataire recevra bien le fichier au format natif
Quant c'est un .DOC je remplace avant les CHAMPS par leur valeur,
With ActiveDocument.Fields
.Update
.unlink
End With
Là je comprend pas pourquoi ?
parce que si tu as un champ NomUtilisateur quand je te l'envoi il sera bien
a Oliv'
mais quand tu l'ouvriras il deviendra Jièl idem avec des dates.
On pourrait aussi supprimer les métadonnées !
Par macro ?
J'ai pas essayé mais j'ai téléchargé un jour l'outil de suppression de
métadonnés de µsoft et on peut l'utiliser en ligne de commande
donc à priori pas de pb
J'ai des truc assez personnalisés je vais voir ce que je peux faire.
Ca risque de faire un peu gros en PJ, non ? ;-))))))
ah c'est pas un portable ? ;-))
En général moi je passe par l'enregistrement du fichier (quel qu'il
soit word excel PDF ) dans un répertoire (et que l'on supprimera par
un kill à la fin)puis son ajout dans le mail en utilisant au choix :
Certes, mais des fois les destinataires doivent travailler avec ce
fichier.
je comprends pas, le destinataire recevra bien le fichier au format natif
Quant c'est un .DOC je remplace avant les CHAMPS par leur valeur,
With ActiveDocument.Fields
.Update
.unlink
End With
Là je comprend pas pourquoi ?
parce que si tu as un champ NomUtilisateur quand je te l'envoi il sera bien
a Oliv'
mais quand tu l'ouvriras il deviendra Jièl idem avec des dates.
On pourrait aussi supprimer les métadonnées !
Par macro ?
J'ai pas essayé mais j'ai téléchargé un jour l'outil de suppression de
métadonnés de µsoft et on peut l'utiliser en ligne de commande
donc à priori pas de pb
J'ai des truc assez personnalisés je vais voir ce que je peux faire.
Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
*JièL que je salut a écrit *:Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Ci dessous une tite macro à mettre dans n'importe quel programme
office(enfin presque).
il faut référencer "Microsoft CDO for Windows 2000 Library"
et il faut que la macro ne soit pas dans le fichier à envoyer.
Pour Access on ne peut pas envoyer la base active avec cette méthode car il
faut la fermer et donc plus de code, il doit y a voir une solution mais je
ne pratique pas le VBA Access.
Pour Publisher c'est presque la même chose je ne sais pas comment on lance
une macro se trouvant dans un autre document.
Mais on peut boucler sur tous les documents ouverts et choisir celui à
envoyer.
Ici l'exemple est donné avec des inputbox pour demander les infos d'envoi
c'est bien sûr mieux avec un Userform.
La macro à lancer est donc GoMail
Pour simplifier il faut que le document ait été enregistré au préalable.
Dans cet exemple pas de pb de sécurité mais le mail est envoyé directement .
A rectifier les retours à la ligne du au post.
-----------------------------------------------------------------------------------
Public Emetteur As String
Public Destinataire As String
Public Sujet As String
Public CorpsBrut As String
Public Fichier As String
Function SendMailCDO(Sender As String, Receiver As String, _
Subject As String, BodyText As String, _
Optional BodyHTML As String, _
Optional Cc As String, Optional Bcc As
String, Optional Attach1 As String)
Dim Cdo_Message As New CDO.Message
Set Cdo_Message.Configuration = GetSMTPServerConfig()
With Cdo_Message
.To = Receiver
.From = Sender
.Subject = Subject
.Cc = Cc
.Bcc = Bcc
'.DSNOptions = 2 ' Delivery Status Notification
'pour indiquer le Corps du Mail en brut.
.TextBody = BodyText
'Décommenter pour indiquer le Corps du Mail en HTML.
'.HTMLBody = BodyHTML
'Pour envoyer une page WEB en tant que corps du Mail.
'.CreateMHTMLBody
"http://groups.google.com/group/microsoft.public.fr.outlook", _
CDO.CdoMHTMLFlags.cdoSuppressNone, "", ""
'ou se trouvant sur son pc
'.CreateMHTMLBody "file:C:INFORMATexemplesévénements.htm"
If Attach1 <> "" Then
If Len(Dir(Attach1)) > 0 Then
.AddAttachment (Attach1)
Else: MsgBox Attach1 & vbCr & "Ce fichier sera ignoré", , "Fichier à
Attacher introuvable !"
End If
End If
'Cette commande envoi le Mail
.send
End With
Set Cdo_Message = Nothing
End Function
Function GetSMTPServerConfig() As Object
Dim Cdo_Config As New CDO.Configuration
Dim Cdo_Fields As Object
Set Cdo_Fields = Cdo_Config.Fields
With Cdo_Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
'.Item(cdoSMTPServer) = "smtp.easynet.fr"
'.Item(cdoSMTPServerPort) = 25
.Update
End With
Set GetSMTPServerConfig = Cdo_Config
Set Cdo_Config = Nothing
Set Cdo_Fields = Nothing
End Function
Sub gomail()
MsgBox Application.Name
Select Case Application.Name
Case "Microsoft Excel"
EnvoiClasseur
Case "Microsoft Word"
EnvoiDoc
Case "Microsoft Access"
'Envoibase
Case "Microsoft PowerPoint"
EnvoiPpt
Case "Microsoft Publisher"
'EnvoiCompo
End Select
End Sub
Private Sub EnvoiClasseur()
Set FichierXls = Application.ActiveWorkbook
If FichierXls.Saved = True Then
Fichier = FichierXls.FullName
FichierXls.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Workbooks.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
Private Sub EnvoiDoc()
Set FichierDoc = Application.ActiveDocument
If FichierDoc.Saved = True Then
Fichier = FichierDoc.FullName
FichierDoc.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Documents.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
Private Sub EnvoiPpt()
Set FichierPpt = Application.ActivePresentation
If FichierPpt.Saved = True Then
Fichier = FichierPpt.FullName
FichierPpt.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Presentations.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
*JièL <NoSpam_forums.offices@free-fr.NoSpam> que je salut a écrit *:
Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Ci dessous une tite macro à mettre dans n'importe quel programme
office(enfin presque).
il faut référencer "Microsoft CDO for Windows 2000 Library"
et il faut que la macro ne soit pas dans le fichier à envoyer.
Pour Access on ne peut pas envoyer la base active avec cette méthode car il
faut la fermer et donc plus de code, il doit y a voir une solution mais je
ne pratique pas le VBA Access.
Pour Publisher c'est presque la même chose je ne sais pas comment on lance
une macro se trouvant dans un autre document.
Mais on peut boucler sur tous les documents ouverts et choisir celui à
envoyer.
Ici l'exemple est donné avec des inputbox pour demander les infos d'envoi
c'est bien sûr mieux avec un Userform.
La macro à lancer est donc GoMail
Pour simplifier il faut que le document ait été enregistré au préalable.
Dans cet exemple pas de pb de sécurité mais le mail est envoyé directement .
A rectifier les retours à la ligne du au post.
-----------------------------------------------------------------------------------
Public Emetteur As String
Public Destinataire As String
Public Sujet As String
Public CorpsBrut As String
Public Fichier As String
Function SendMailCDO(Sender As String, Receiver As String, _
Subject As String, BodyText As String, _
Optional BodyHTML As String, _
Optional Cc As String, Optional Bcc As
String, Optional Attach1 As String)
Dim Cdo_Message As New CDO.Message
Set Cdo_Message.Configuration = GetSMTPServerConfig()
With Cdo_Message
.To = Receiver
.From = Sender
.Subject = Subject
.Cc = Cc
.Bcc = Bcc
'.DSNOptions = 2 ' Delivery Status Notification
'pour indiquer le Corps du Mail en brut.
.TextBody = BodyText
'Décommenter pour indiquer le Corps du Mail en HTML.
'.HTMLBody = BodyHTML
'Pour envoyer une page WEB en tant que corps du Mail.
'.CreateMHTMLBody
"http://groups.google.com/group/microsoft.public.fr.outlook", _
CDO.CdoMHTMLFlags.cdoSuppressNone, "", ""
'ou se trouvant sur son pc
'.CreateMHTMLBody "file:\C:INFORMATexemplesévénements.htm"
If Attach1 <> "" Then
If Len(Dir(Attach1)) > 0 Then
.AddAttachment (Attach1)
Else: MsgBox Attach1 & vbCr & "Ce fichier sera ignoré", , "Fichier à
Attacher introuvable !"
End If
End If
'Cette commande envoi le Mail
.send
End With
Set Cdo_Message = Nothing
End Function
Function GetSMTPServerConfig() As Object
Dim Cdo_Config As New CDO.Configuration
Dim Cdo_Fields As Object
Set Cdo_Fields = Cdo_Config.Fields
With Cdo_Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
'.Item(cdoSMTPServer) = "smtp.easynet.fr"
'.Item(cdoSMTPServerPort) = 25
.Update
End With
Set GetSMTPServerConfig = Cdo_Config
Set Cdo_Config = Nothing
Set Cdo_Fields = Nothing
End Function
Sub gomail()
MsgBox Application.Name
Select Case Application.Name
Case "Microsoft Excel"
EnvoiClasseur
Case "Microsoft Word"
EnvoiDoc
Case "Microsoft Access"
'Envoibase
Case "Microsoft PowerPoint"
EnvoiPpt
Case "Microsoft Publisher"
'EnvoiCompo
End Select
End Sub
Private Sub EnvoiClasseur()
Set FichierXls = Application.ActiveWorkbook
If FichierXls.Saved = True Then
Fichier = FichierXls.FullName
FichierXls.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Workbooks.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
Private Sub EnvoiDoc()
Set FichierDoc = Application.ActiveDocument
If FichierDoc.Saved = True Then
Fichier = FichierDoc.FullName
FichierDoc.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Documents.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
Private Sub EnvoiPpt()
Set FichierPpt = Application.ActivePresentation
If FichierPpt.Saved = True Then
Fichier = FichierPpt.FullName
FichierPpt.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Presentations.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
*JièL que je salut a écrit *:Clairement : je voudrais mettre en téléchargement les macros qui envoi
sans tomber sur la sécurité d'Outlook et ce pour tout les prog de la
suite Office. Le bonus serait qu'ils puisse avoir la possibilité de
rajouter un qqchose avant l'envoi si on passe par Outlook !?
Ci dessous une tite macro à mettre dans n'importe quel programme
office(enfin presque).
il faut référencer "Microsoft CDO for Windows 2000 Library"
et il faut que la macro ne soit pas dans le fichier à envoyer.
Pour Access on ne peut pas envoyer la base active avec cette méthode car il
faut la fermer et donc plus de code, il doit y a voir une solution mais je
ne pratique pas le VBA Access.
Pour Publisher c'est presque la même chose je ne sais pas comment on lance
une macro se trouvant dans un autre document.
Mais on peut boucler sur tous les documents ouverts et choisir celui à
envoyer.
Ici l'exemple est donné avec des inputbox pour demander les infos d'envoi
c'est bien sûr mieux avec un Userform.
La macro à lancer est donc GoMail
Pour simplifier il faut que le document ait été enregistré au préalable.
Dans cet exemple pas de pb de sécurité mais le mail est envoyé directement .
A rectifier les retours à la ligne du au post.
-----------------------------------------------------------------------------------
Public Emetteur As String
Public Destinataire As String
Public Sujet As String
Public CorpsBrut As String
Public Fichier As String
Function SendMailCDO(Sender As String, Receiver As String, _
Subject As String, BodyText As String, _
Optional BodyHTML As String, _
Optional Cc As String, Optional Bcc As
String, Optional Attach1 As String)
Dim Cdo_Message As New CDO.Message
Set Cdo_Message.Configuration = GetSMTPServerConfig()
With Cdo_Message
.To = Receiver
.From = Sender
.Subject = Subject
.Cc = Cc
.Bcc = Bcc
'.DSNOptions = 2 ' Delivery Status Notification
'pour indiquer le Corps du Mail en brut.
.TextBody = BodyText
'Décommenter pour indiquer le Corps du Mail en HTML.
'.HTMLBody = BodyHTML
'Pour envoyer une page WEB en tant que corps du Mail.
'.CreateMHTMLBody
"http://groups.google.com/group/microsoft.public.fr.outlook", _
CDO.CdoMHTMLFlags.cdoSuppressNone, "", ""
'ou se trouvant sur son pc
'.CreateMHTMLBody "file:C:INFORMATexemplesévénements.htm"
If Attach1 <> "" Then
If Len(Dir(Attach1)) > 0 Then
.AddAttachment (Attach1)
Else: MsgBox Attach1 & vbCr & "Ce fichier sera ignoré", , "Fichier à
Attacher introuvable !"
End If
End If
'Cette commande envoi le Mail
.send
End With
Set Cdo_Message = Nothing
End Function
Function GetSMTPServerConfig() As Object
Dim Cdo_Config As New CDO.Configuration
Dim Cdo_Fields As Object
Set Cdo_Fields = Cdo_Config.Fields
With Cdo_Fields
.Item(cdoSendUsingMethod) = cdoSendUsingPort
'.Item(cdoSMTPServer) = "smtp.easynet.fr"
'.Item(cdoSMTPServerPort) = 25
.Update
End With
Set GetSMTPServerConfig = Cdo_Config
Set Cdo_Config = Nothing
Set Cdo_Fields = Nothing
End Function
Sub gomail()
MsgBox Application.Name
Select Case Application.Name
Case "Microsoft Excel"
EnvoiClasseur
Case "Microsoft Word"
EnvoiDoc
Case "Microsoft Access"
'Envoibase
Case "Microsoft PowerPoint"
EnvoiPpt
Case "Microsoft Publisher"
'EnvoiCompo
End Select
End Sub
Private Sub EnvoiClasseur()
Set FichierXls = Application.ActiveWorkbook
If FichierXls.Saved = True Then
Fichier = FichierXls.FullName
FichierXls.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Workbooks.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
Private Sub EnvoiDoc()
Set FichierDoc = Application.ActiveDocument
If FichierDoc.Saved = True Then
Fichier = FichierDoc.FullName
FichierDoc.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Documents.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub
Private Sub EnvoiPpt()
Set FichierPpt = Application.ActivePresentation
If FichierPpt.Saved = True Then
Fichier = FichierPpt.FullName
FichierPpt.Close
Emetteur = InputBox("Emetteur ?", "Envoi par Mail", "Emetteur par défault")
Destinataire = InputBox("Destinataires (séparés par des ;)", "Envoi par
Mail")
Sujet = InputBox("Objet du mail ?", "Envoi par Mail", "Test CDO " &
Application.Name)
CorpsBrut = InputBox("Corps du message ?", "Envoi par Mail", "Lire le
fichier joint")
Call SendMailCDO(Emetteur, Destinataire, Sujet, CorpsBrut, , , , Fichier)
Presentations.Open Fichier
MsgBox "Mail envoyé"
Else
MsgBox "Vous devez enregistrer votre fichier avant de pouvoir l'envoyer", ,
"Erreur"
End If
End Sub