Microsoft 365 Mail envoi automatique avec texte

Usine à gaz

XLDnaute Barbatruc
Bonsoir à toutes et à tous,
Je vous souhaite un bon WE :)

Me revoilà devant nos ténors pour un souci de "Mail envoi automatique avec texte"
J'ai pas mal avancé sur le sujet mais je n'arrive pas à terminer :

Besoin : Si en Cellule D6, je sélectionne "Abonnement mensuel," ou "Abonnement annuel,"
Je voudrais qu'un mail soit envoyé à l'adresse en Cellule H6 avec le contenu de la cellule F6

Je joins le fichier test,
Un grand merci par avance,
lionel :)
 

Pièces jointes

  • envoi mail.xlsm
    58.9 KB · Affichages: 8
Dernière édition:
Solution
Re

Imaginons que dans Outlook (en plus de mon compte par défaut j'ai ajouté) mon compte Hotmail.
(voir moult tutos sur le web pour ce faire)
Imaginons que je sois patient et que je lise religieusement les conseils qu'on me prodigue
Imaginons que je sois curieux
Maintenant qu'on a rendu hommage à John L. )
Allons faire un tour du côté d'Outlook (*) pour tester ce que Lionel aurait pu trouver depuis le message#4
(puisque le lien était donné par Kiki29)

(*) non je ne vais pas rendre hommage à Dave en plus ;)
(quoique 2022, c'est l'année Proust)
Ci-dessous code issu des pages de RDB
Enrichi (BBcode):
Sub Mail_small_Text_Change_Account()
'Only working in Office 2007 and higher
'Don't forget to set a reference to Outlook in the VBA editor...

Usine à gaz

XLDnaute Barbatruc
Mauvaise nouvelle :
Ce soir, j’arrive à envoyer par CDO avec tout type de user (free,orange,gmail,etc ...) sauf les hotmail ou outlook , ce qui fonctionnait parfaitement il y a un an .... :mad:
pb entre Cdo et le starttls imposé par office ... ????

:mad:
Merci vraiment pour ton courage fanch55 :)
Ce soir je n'en peux plus et je me lève à 5h demain.
J'ai également des adresses gmail.
Demain, je tenterai avec gmail.
Je vais au dodo
Encore merci à toi :)
Bonne nuit; il faut se reposer :)
 

Staple1600

XLDnaute Barbatruc
Re

Imaginons que dans Outlook (en plus de mon compte par défaut j'ai ajouté) mon compte Hotmail.
(voir moult tutos sur le web pour ce faire)
Imaginons que je sois patient et que je lise religieusement les conseils qu'on me prodigue
Imaginons que je sois curieux
Maintenant qu'on a rendu hommage à John L. )
Allons faire un tour du côté d'Outlook (*) pour tester ce que Lionel aurait pu trouver depuis le message#4
(puisque le lien était donné par Kiki29)

(*) non je ne vais pas rendre hommage à Dave en plus ;)
(quoique 2022, c'est l'année Proust)
Ci-dessous code issu des pages de RDB
Enrichi (BBcode):
Sub Mail_small_Text_Change_Account()
'Only working in Office 2007 and higher
'Don't forget to set a reference to Outlook in the VBA editor
    Dim OutApp As Outlook.Application
    Dim OutMail As Outlook.MailItem
    Dim OutAccount As Outlook.Account
    Dim strbody As String

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(olMailItem)
  
    'Use the first account, see that Item is 1 now
    Set OutAccount = OutApp.Session.Accounts.Item(1)
'Ajout Staple
'Et si je modifiais pour mettre le numéro de compte qui correspond à mon compte Hotmail
  
    'Or us the name instead of the number
    'Set OutAccount = OutApp.Session.Accounts("ron@something.nl")
'Ajout Staple
'Et si ici j'ajoutais mon compte Hotmail
'ou plutôt mon mail Hotmail
  
    strbody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2" & vbNewLine & _
              "This is line 3" & vbNewLine & _
              "This is line 4"

    On Error Resume Next
    With OutMail
        .To = "ron@debruin.nl"
        .CC = ""
        .BCC = ""
        .Subject = "This is the Subject line"
        .Body = strbody
        .SendUsingAccount = OutAccount
        .Display   'or use .Send
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing
    Set OutAccount = Nothing
End Sub
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
Allons dans Outlook pour tester
Voui, mais apparemment il ne veut pas nous dire si Outlook est installé et configuré avec un compte mail.
Et il ne veut pas non plus répondre quand on lui demande s'il est éventuellement prêt à utiliser Outlook.
C'est son choix. il en a bien sûr le droit. Je crois qu'on a tous des choses plus ou moins importantes qu'on veut garder secrètes...

J'ai cru comprendre, au final, que :
- d'une part il a bien Outlook installé sur son PC mais qu'il n'y a pas paramétré son compte mail Hotmail.com,
- d'autre part il utilise uniquement le webmail pour lire et écrire les messages de cette boîte mail.
 

Staple1600

XLDnaute Barbatruc
Bonsoir Marcel

Il y a ce qu'on veut
Il y a ce qu'on croit être le top.

Et sinon il y a le K.I.S.S

Lionel possède Office365.
Il veut du VBA
Ça tombe bien Outlook & Excel parle le VBA ;)
Et c'est plus simple que de piloter son browser par code VBA/javascript.

NB: Si Kiki29 a fait cette proposition dés le message#4, c'est pas pour rien, non ?
(D'autant plus que Ron de Bruin a publié ce bout de code déjà depuis un bail)

Note pour moi-même
[ci-dessous phrases toutes mignonettes sans méchanceté, donc ne pas prendre la mouche, hein Lionel ?]
J'oubliais que je m'adressais au gars qui fait une fixette sur les usines à gaz.
Celui qui les aime tellement qu'il en a fait son pseudo ;)
Je crois qu'en plus il est en train de couver une nouvelle addiction:
les fils à rallonge qui font plus de 10 pages ;)
(je sens qu'on va bientôt les atteindre) ;)
[/phrases]
 
Dernière édition:

Staple1600

XLDnaute Barbatruc
Re

Oui mais CDO ne fonctionne pas dans tous les environnements (*)
(Il y a parfois des DSI /DSN qui brident la chose)

Et comme le dit lui-même Fanch55, CDO ne marche plus avec Hotmail.

(*): c'est le cas, dans mon taf.
(master Windows "bridé" sur tous les PC de la boite, et pas de session admin pour les employés)
 

Usine à gaz

XLDnaute Barbatruc
Re

Imaginons que dans Outlook (en plus de mon compte par défaut j'ai ajouté) mon compte Hotmail.
(voir moult tutos sur le web pour ce faire)
Imaginons que je sois patient et que je lise religieusement les conseils qu'on me prodigue
Imaginons que je sois curieux
Maintenant qu'on a rendu hommage à John L. )
Allons faire un tour du côté d'Outlook (*) pour tester ce que Lionel aurait pu trouver depuis le message#4
(puisque le lien était donné par Kiki29)

(*) non je ne vais pas rendre hommage à Dave en plus ;)
(quoique 2022, c'est l'année Proust)
Ci-dessous code issu des pages de RDB
Enrichi (BBcode):
Sub Mail_small_Text_Change_Account()
'Only working in Office 2007 and higher
'Don't forget to set a reference to Outlook in the VBA editor
    Dim OutApp As Outlook.Application
    Dim OutMail As Outlook.MailItem
    Dim OutAccount As Outlook.Account
    Dim strbody As String

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(olMailItem)
 
    'Use the first account, see that Item is 1 now
    Set OutAccount = OutApp.Session.Accounts.Item(1)
'Ajout Staple
'Et si je modifiais pour mettre le numéro de compte qui correspond à mon compte Hotmail
 
    'Or us the name instead of the number
    'Set OutAccount = OutApp.Session.Accounts("ron@something.nl")
'Ajout Staple
'Et si ici j'ajoutais mon compte Hotmail
'ou plutôt mon mail Hotmail
 
    strbody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2" & vbNewLine & _
              "This is line 3" & vbNewLine & _
              "This is line 4"

    On Error Resume Next
    With OutMail
        .To = "ron@debruin.nl"
        .CC = ""
        .BCC = ""
        .Subject = "This is the Subject line"
        .Body = strbody
        .SendUsingAccount = OutAccount
        .Display   'or use .Send
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing
    Set OutAccount = Nothing
End Sub
Vraiment merci JM voici ce que j'ai fait :
VB:
Sub Mail_small_Text_Change_Account()
'Only working in Office 2007 and higher
'Don't forget to set a reference to Outlook in the VBA editor
    Dim OutApp As Outlook.Application
    Dim OutMail As Outlook.MailItem
    Dim OutAccount As Outlook.Account
    Dim strbody As String

    Set OutApp = CreateObject("Outlook.Application")
    Set OutMail = OutApp.CreateItem(olMailItem)
 
    'Use the first account, see that Item is 1 now
    'Set OutAccount = OutApp.Session.Accounts.Item(1)
'Ajout Staple
'Et si je modifiais pour mettre le numéro de compte qui correspond à mon compte Hotmail
 
    'Or us the name instead of the number
    Set OutAccount = OutApp.Session.Accounts("TrucMuche@hotmail.com")
'Ajout Staple
'Et si ici j'ajoutais mon compte Hotmail
'ou plutôt mon mail Hotmail

    strbody = "Hi there" & vbNewLine & vbNewLine & _
              "This is line 1" & vbNewLine & _
              "This is line 2" & vbNewLine & _
              "This is line 3" & vbNewLine & _
              "This is line 4"

    On Error Resume Next
    With OutMail
        .To = "lio@hotmail.fr"
        .CC = ""
        .BCC = ""
                   .Subject = "message de lionel"
                    .Body = [f6].Value
        .SendUsingAccount = OutAccount
        .Display   'or use .Send
    End With
    On Error GoTo 0

    Set OutMail = Nothing
    Set OutApp = Nothing
    Set OutAccount = Nothing
End Sub
Le code fonctionne mais m'amène toujours sur Outlook et pas dans ma boite mail Hotmail.com (qui est ouverte en permanence dans mon navigateur).

Je n'ai pas bien compris ceci :
Code:
    'Use the first account, see that Item is 1 now
    'Set OutAccount = OutApp.Session.Accounts.Item(1)
'Ajout Staple
'Et si je modifiais pour mettre le numéro de compte qui correspond à mon compte Hotmail
 
    'Or us the name instead of the number
    Set OutAccount = OutApp.Session.Accounts("TrucMuche@hotmail.com")
'Ajout Staple
'Et si ici j'ajoutais mon compte Hotmail
'ou plutôt mon mail Hotmail
lionel :)
 

Usine à gaz

XLDnaute Barbatruc
Voui, mais apparemment il ne veut pas nous dire si Outlook est installé et configuré avec un compte mail.
Et il ne veut pas non plus répondre quand on lui demande s'il est éventuellement prêt à utiliser Outlook.
C'est son choix. il en a bien sûr le droit. Je crois qu'on a tous des choses plus ou moins importantes qu'on veut garder secrètes...

J'ai cru comprendre, au final, que :
- d'une part il a bien Outlook installé sur son PC mais qu'il n'y a pas paramétré son compte mail Hotmail.com,
- d'autre part il utilise uniquement le webmail pour lire et écrire les messages de cette boîte mail.
Bonjour Marcel Outlook est mis automatiquement avec la suite office mais n'est pas configuré puisque j'utilise Hotmail :)
Je ne souhaite pas utiliser Outlook que je n'aime pas du tout lol.
Je ne savais pas qu'il fallait paramétrer mon compte Hotmail.com avec Outlook.
Je ne vois pas comment( faire ?
lio :)
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
Bonjour Marcel Outlook est mis automatiquement avec la suite office mais n'est pas configuré puisque j'utilise Hotmail :)
Je ne vois pas bien en quoi l'utilisation d'une adresse Hotmail empêcherait l'utilisation d'Outlook. 🤔
Ceci dit, moi non plus je n'utilise pas Outlook, donc peut-être que quelque chose m'échappe...


Je ne souhaite pas utiliser Outlook que je n'aime pas du tout lol.
Si tu ne veux pas utiliser Outlook, mais que CDO ne fonctionne plus avec des adresses Hotmail, tu ne vas peut-être pas avoir le choix (au moins pour cet envoie automatique)...


Je ne savais pas qu'il fallait paramétrer mon compte Hotmail.com avec Outlook.
Je ne vois pas comment( faire ?
Ben Outlook ne va pas deviner tout seul les paramètres de ton compte, sauf peut-être si tu utilises un compte Microsoft associé à cette adresse Hotmail pour ouvrir ta cession Windows ???
 
Dernière édition:

TooFatBoy

XLDnaute Barbatruc
je n'ai pas bien compris ceci :
Code:
'Use the first account, see that Item is 1 now
'Set OutAccount = OutApp.Session.Accounts.Item(1)
'Ajout Staple
'Et si je modifiais pour mettre le numéro de compte qui correspond à mon compte Hotmail

'Or us the name instead of the number
Set OutAccount = OutApp.Session.Accounts("TrucMuche@hotmail.com")
'Ajout Staple
'Et si ici j'ajoutais mon compte Hotmail
'ou plutôt mon mail Hotmail
Normal que tu n'aies pas bien compris car à mon avis il manque un "e" : ça ne doit pas être "Or us the name" mais plutôt "Or use the name". 😉
 

Staple1600

XLDnaute Barbatruc
Bonjour le fil

Il s'agit ici d'envoyer un mail avec comme expéditeur une adresse hotmail, non ?
Dans ce cas, avec cette macro, c'est Outlook qui joue le facteur.
(Cela ne change donc pas tes habitudes)

Et pour ajouter un compte Hotmail dans Outlook, suffit de creuser un tant soit peu la question :rolleyes:
(suffit d'un clavier et de deux doigts, voir un seul ;))

Au hasard (*), par exemple => ()
 

Usine à gaz

XLDnaute Barbatruc
Bonjour Marcel :)
Bonjour Staple1600 :)
@Marcel : Je suis désolé de ne pas avoir répondu à tes messages.
Mais j'en avais une indigestion de ce problème et je ne suis pas venu voir :oops:

@ Staple1600
Ton code fonctionne très bien mais il ouvre Outlook et pas ma boite Hotmail

Mais je pense que Marcel a mis le doigt sur un truc important :
Mon compte Outlook n'est pas configuré (mon adresse hotmail n'est pas ajoutée dans Outlook)
et le souci de l'ouverture d'Outlook au lieu de ma boite Hotmail provient certainement de là !

Je suis en train de voir ce qu'il faut faire pour ajouter mon adresse Hotmail dans Outlook.
Ca parait très simple mais je "crin de cheval" de perdre tout mes mails et adresses interlocuteurs enregistrés etc...et ce serait la "CATA".

Merci pour tout ce que vous faites pour moi ... VRAIMENT MERCI :):):)
lionel :)
 

Discussions similaires

Réponses
1
Affichages
339
Compte Supprimé 979
C
Réponses
6
Affichages
610
Réponses
17
Affichages
2 K
Réponses
22
Affichages
3 K

Statistiques des forums

Discussions
315 083
Messages
2 116 041
Membres
112 640
dernier inscrit
rachidqadmir