• Initiateur de la discussion Initiateur de la discussion chinel
  • 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 !

chinel

XLDnaute Impliqué
Salut tout le monde !!!

je cherche à faire une userform avec une textbox ou je pourrais mettre du texte et puis un bouton de commande qui pourrait ouvrir Microsoft Outlook puis envoyer le message à :manu.dejong@skynet.be[/email]

merci de votre aide !!!
 
Dernière édition:
Re : Mail

Bonsoir



Trouvé sur le forum
(avec une petite adaptation)

1) créer un userform avec une textbox (TextBox1) et un commandbutton
(CommandButton1)

2) Colle le code ci_dessous dans l'UserForm

Code:
Private Sub CommandButton1_Click()
'SOURCE:http://www.excel-downloads.com/forum/69198-envoyer-un-mail-avec-mailto.html
'auteur: PierreJean
    Dim HyperLien As String, Objet As String, Corps As String
    Objet = "L'objet du mail"
    Corps = "Le message"
    Corps = Application.WorksheetFunction.Substitute(Corps, vbCrLf, "%0D%0A")
    ad = TextBox1.Text 'adresse mail saisie dans la TextBox de l 'UserForm
    
    HyperLien = "mailto:" & ad & "?cc=" & copie
    HyperLien = HyperLien & "&Subject=" & Objet & " (à " & Time() & ")"
    HyperLien = HyperLien & "&Body=" & Corps
    ActiveWorkbook.FollowHyperlink HyperLien

End Sub

Et également sur le forum un exemple (de @+Thierry) avec UserForm
https://www.excel-downloads.com/attachments/usf-send-mail-zip.1381/
 
Dernière édition:
Re : Mail

ma question est : je voudrais ouvrir une userform avec dedans une textbox dans la textbox je voudrais écrire du texte puis quand j'ai fini, je clique sur envoyer (bouton de commande) et automatiquement le texte écrit dans la textbox par dans la boîte mail de manu.dejong@skynet.be
après l'envoie l'userform se ferme et un message de confirmation "message envoyer" et aussi la textbox se vide pour le prochain message



merci de vous cassé la tête pour moi !!!!
 
Re : Mail

Bonjour

Em modifiant ainsi ca ne répond toujours pas à ta question

Private Sub CommandButton1_Click()
'SOURCE:https://www.excel-downloads.com/threads/envoyer-un-mail-avec-mailto.69198/
'auteur: PierreJean
Dim HyperLien As String, Objet As String, Corps As String
Objet = "Pas d'objet"
Corps = TextBox1
Corps = Application.WorksheetFunction.Substitute(Corps, vbCrLf, "%0D%0A")
ad = "manu.dejong@skynet.be"
HyperLien = "mailto:" & ad & "?cc=" & copie
HyperLien = HyperLien & "&Subject=" & Objet & " (à " & Time() & ")"
HyperLien = HyperLien & "&Body=" & Corps
ActiveWorkbook.FollowHyperlink HyperLien
TextBox1=vbNullString
MsgBox "message envoyé"
End Sub
 
Dernière édition:
Re : Mail

Bonsoir


Le super fort c'est PierreJean

et l'autre super fort c'est le moteur de recherche de ce forum


Code:
Private Sub CommandButton1_Click()
'SOURCE:http://www.excel-downloads.com/forum...ec-mailto.html
[B]'auteur":" PierreJean[/B]
Dim HyperLien As String, Objet As String, Corps As String
Objet = "Aide"' ici tu peux modifier le texte entre les deux guillemets
Corps = TextBox1
Corps = Application.WorksheetFunction.Substitute(Corps, vbCrLf, "%0D%0A")
ad = "manu.dejong@skynet.be" 'ici tu peux modifier le mail
HyperLien = "mailto:" & ad & "?cc=" 
HyperLien = HyperLien & "&Subject=" & Objet 
HyperLien = HyperLien & "&Body=" & Corps
ActiveWorkbook.FollowHyperlink HyperLien
TextBox1=vbNullString
MsgBox "Message envoyé"
End Sub

Une autre façon de faire (presque identique)
Code:
Private Sub CommandButton1_Click()
'SOURCE:[url=http://dj.joss.free.fr/web.htm]Excel et le WEB[/url]
[B]'Auteur":"Daniel Josserand[/B]
Dim email As String: Dim message As String: Dim Sujet As String: Dim Envoyer As String
email = "manu.dejong@skynet.be"
Sujet = "Aide"
message = "Salut Manu" & TextBox1
Envoyer = "mailto:" & email & "?subject=" & Sujet & "&body=" & message
ActiveWorkbook.FollowHyperlink Address:=Envoyer
TextBox1=vbNullString
MsgBox "Message envoyé"
End sub

PS: si tu es sous Windosw XP ou Vista , utilises plutot CDO
voir ici: How to send mail from Visual Basic using CDO 1.x Library
ou là: Sending mail from Excel with CDO

///////////

Question aux autres forumeurs
Impossible de passer à la ligne (dans le body) en utilisant vbNewline
Code:
Envoyer = "mailto:" & email & "?subject=" _
& Sujet & "&body=" _
& "Salut Manu" & [B]vbNewLine[/B] _
& message

Y-a-t-il un moyen d'y arriver?
Oui (Merci MichelXLD et son WIKI)
Code:
Private Sub CommandButton1_Click
[B]'Wiki MichelXLD Page 3[/B]
Dim Adresse As String
Dim Sujet As String, Texte As String
Adresse = "prenom.nom@domaine.com"
Sujet = "Aide"
Texte = "Salut Manu ," & vbCrLf & vbCrLf _
& TextBox1.Text
Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:mailto:" _
& Adresse & "?subject=" & Sujet & "&Body=" & Texte
End Sub
 
Dernière édition:
Re : Mail

Re

Je viens de m'apercevoir que tu veux utiliser Outlook et non Outlook Express

dans ce cas c'est beaucoup plus simple:
Code:
'SOURCE:http://www.rondebruin.nl/mail/folder3/smallmessage.htm
Private Sub CommandButton1_Click
' Is working in Office 2000-2007
    Dim OutApp As Object
    Dim OutMail As Object
    Dim strbody As String
 
    Set OutApp = CreateObject("Outlook.Application")
    OutApp.Session.Logon
    Set OutMail = OutApp.CreateItem(0)
 
    strbody = "Salut Manu" & vbNewLine & vbNewLine & _
              TexBox1 
    On Error Resume Next
    With OutMail
        .To = "manu.dejong@skynet.be"
        .CC = ""
        .BCC = ""
        .Subject = "Aide"
        .Body = strbody
        .Send   'or use .Display
    End With
    On Error GoTo 0
 
    Set OutMail = Nothing
    Set OutApp = Nothing
End Sub

des infos détaillées ici:Listes de diffusion : Accédez à Outlook via VBA
 
Dernière édition:
Re : Mail

Dim OutApp As Object
Dim OutMail As Object
Dim strbody As String

Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)

strbody = "Salut Manu" & vbNewLine & vbNewLine & _
TexBox1
On Error Resume Next
With OutMail
.To = "manu.dejong@skynet.be"
.CC = ""
.BCC = ""
.Subject = "Aide"
.Body = strbody
.Send 'or use .Display
End With
On Error GoTo 0

Set OutMail = Nothing
Set OutApp = Nothing

j'ai mis ceci et cela fonction très bien mais je ne vois pas le texte que j'ai écris dans la textbox qui devrais être le corps du message
voici ce que je vois et c'est très bien mais incomplet (voir fichier attacher)

merci beaucoup de ton aide mais je sais qu"avec toi je vais trouver la clé de mon problème !
 

Pièces jointes

Re : Mail

Bonjour

Sur ce coup là (utiliser Outlook) je ne peux pas t'aider

Outlook n'est pas installé sur mon poste

Mais je crois qu'il faut que tu coches dans Références (dans l' éditeur VBE)

la référence à Microsoft Outlook 9.0 Objects Library


évidemment tu dois avoir Outlook d'installé (pas Outlook Express)
 
Dernière édition:
- 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
12
Affichages
644
  • Question Question
Réponses
5
Affichages
623
Réponses
5
Affichages
431
  • Question Question
Microsoft 365 Contrôle sur date
Réponses
8
Affichages
409
Retour