• Initiateur de la discussion Initiateur de la discussion renaud
  • Date de début Date de début

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 !

R

renaud

Guest
Bonjour,

Que dois je remplacer pour appeler Outlook Express et non Outlook dans ma macro


Set Ol = New Outlook.Application

Dois aussi decocher la case Microsoft outlook dans Outil/Preferences du Visual Basic?

Merci beaucoup

renaud
 
Bonjour Renaud, le Forum

Il ne faut pas confondre Outlook Express et Outlook, le second étant partie intégrante de la suite Office, on peut y faire une instance d'objet en VBA, le rendant ainsi complètement pilotable depuis Excel.

Pour Outlook Express, à ma connaissance c'est assez différent, tu peux faire un Shell :

Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:mailto:renaud@escp-eap.net"

ou encore si c'est Outlook Express qui est défini par défaut comme client mail sur ta workstation :

ActiveWorkbook.FollowHyperlink Address:="mailto:renaud@escp-eap.net", NewWindow:=True

ou encore voici une version plus élaborée :
Sub EmailHyperlink()
Dim MailString As String

MailString = "mailto:renaud@escp-eap.net" & _
"?subject=Voici le Sujet du Message­" & _
"&body=Voici le Corps du Message" & _
"&cc=Thierry@XLD.com" & _
"&bcc=WebMaster@XLD.com"

ActiveWorkbook.FollowHyperlink Address:=MailString, NewWindow:=True

End Sub


A noter aussi que la méthode "SendMail" fonctionnera aussi dans ce cas là si Outlook Express est ton Client Mail par défaut...

Bon Aprèm
@+Thierry
 
Merci mais c est un peu trop complique pour moi, de plus je ne sais pas si Outlook express esr mon client mail. Ou dois je inserer ton Shell dans ma macro et que dois je changer?

Merci beaucoup

Renaud

Sub SendMail_Outlook()

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 = Sheets("Feuil1").Range("A1").Value .Subject = Sheets("Feuil1").Range("A2").Value
.Body = "Bonjour," .Send


End With
End Sub
 
Re bonjour Renaud, le Forum

Non, tu m'as mal compris, je ne pense pas que tu puisses faire une instance d'objet sur Outlook Express, or tu persistes à le faire toujours :

Set OL = New Outlook.Application

.... ce qui serait applicable à Outlook de Office mais PAS Outlook Express

Fais simplement un essai avec ce code :

Sub EmailHyperlink()
Dim MailString As String
Dim Destinataire As String
Dim Sujet As String
Dim CorpsMessage As String

Destinataire = Sheets("Feuil1").Range("A1").Value
Sujet = Sheets("Feuil1").Range("A2").Value
CorpsMessage = "Bonjour"


MailString = "mailto:" & Destinataire & _
"?subject=" & Sujet & _
"&body=" & CorpsMessage

ActiveWorkbook.FollowHyperlink Address:=MailString, NewWindow:=True

End Sub


Si ton Outlook Express est ton "Client Mail" (c'est à dire ton logiciel de messagerie par défaut) alors tu auras une fenêtre avec ton mail prèt à expédier...

Bonne Soirée
@+Thierry
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
6
Affichages
235
Retour