Menu

Vba outlook test ouverture/fermture appli + envoi mail récurrent

Messages postés
4
Date d'inscription
jeudi 11 juillet 2019
Statut
Membre
Dernière intervention
19 juillet 2019
- - Dernière réponse : yg_be
Messages postés
8052
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 juillet 2019
- 19 juil. 2019 à 11:56
Bonjour
j'ai lu la discussion suivante sur le forum
https://www.commentcamarche.net/forum/affich-30420061-lancer-outlook-via-vba
durant laquelle f894009 a apporté la solution suivante pour qu'outlook s'ouvre tout seul.

Sub SendMail_Outlook()

Dim OL As Object
Dim OLmail As Object

Set OLk_Appli = CreateObject("Outlook.Application")

If OLk_Appli.Explorers.Count > 0 Then
'Ok outlook ouvert
Else
'mettre le bon chemin outlook
OLk_OK = Shell("C:\Program Files (x86)\Microsoft Office\Office15\outlook.exe", vbHide)
End If

Set OL = CreateObject("Outlook.Application")
Set OLmail = OL.CreateItem(0)

With OLmail
.To = "fabiengaluchet@gmail.com"
.Subject = "test_envoi_x"
.Body = "azerty"
'.display
.Send
End With

Set OLmail = Nothing
Set OL = Nothing
Set OLk_Appli = Nothing
End Sub


premièrement cela fonctionnera-t-il si l'ordinateur est en veille sur l'invit de session windows ?

deuxièmement j'avais trouvé ce code très bien auparavant :

'Original function written by Diane Poremsky: http://www.slipstick.com/developer/send-email-outlook-reminders-fires/
Private Sub Application_Reminder(ByVal Item As Object)
Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

If Item.MessageClass <> "IPM.Appointment" Then 'vérifie s'il s'agit d'un rappel sur RDV
Exit Sub
End If

If Item.Categories <> "rappel décades" Then 'indiquer ici le nom de la catégorie créée pour les mails autos
Exit Sub
End If

objMsg.SendUsingAccount = objMsg.Session.Accounts.Item(1) 'si gestion de plusieurs comptes
'objMsg.Importance = olImportanceHigh 'importance du message
objMsg.To = Item.Location 'ligne Lieu de rendez-vous utilisée pour les adresses
objMsg.Subject = Item.Subject 'objet du mail
objMsg.Body = Item.Body 'corps du mail
'objMsg.Attachments.Add "C:\Users\xxx\Desktop\xxx.jpg" 'pour ajouter une pièce jointe
objMsg.Send 'DISPLAY : affiche le mail avant envoi - SEND : envoit le mail sans relecture
Set objMsg = Nothing
End Sub


Donc question : comment mixer ces 2 codes.

Le but au final est d'avoir un envoi de mail automatique tous les 1er, 11 et 21 de chaque mois à minuit (donc sans que je soit à mon poste car je ne travaille pas la nuit :-) )

merci
Afficher la suite 

1 réponse

Messages postés
8052
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 juillet 2019
396
0
Merci
bonjour, le premier code n'ouvre pas Outlook "tout seul", il ouvre Outlook quand le code est exécuté.
et le second code est indépendant du premier, il sera exécuté par Outlook quand un rappel se déclenche. il n'est donc pas utile de "mixer" les deux codes, tu peux les utiliser en parallèle.
yg_be
Messages postés
8052
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 juillet 2019
396 > gt76000
Messages postés
4
Date d'inscription
jeudi 11 juillet 2019
Statut
Membre
Dernière intervention
19 juillet 2019
-
en veille: en session, avec Outlook en route? as-tu testé le deuxième code?
gt76000
Messages postés
4
Date d'inscription
jeudi 11 juillet 2019
Statut
Membre
Dernière intervention
19 juillet 2019
-
en veille session outlook fermé.
tout fermé
écrans éteints
windows sur invit session

le 2eme code qui envoi le mail en utilisant le reminder ne fonctionne que si outlook est ouvert
sinon là je loupe le coche et quand j'arrive le matin en ouvrant outlook j'ai des rappels qui me disent que j'ai loupé mon "rdv" et le mail n'est pas parti puisqu'absent de la boîte d'envoi

d'où l'idée que outlook s'ouvre tous seul pour que le vba reminder fonctionne bien puis se referme dans l'idéal
yg_be
Messages postés
8052
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 juillet 2019
396 > gt76000
Messages postés
4
Date d'inscription
jeudi 11 juillet 2019
Statut
Membre
Dernière intervention
19 juillet 2019
-
je pense que le mieux est de laisser Outlook fonctionner écran éteint.
gt76000
Messages postés
4
Date d'inscription
jeudi 11 juillet 2019
Statut
Membre
Dernière intervention
19 juillet 2019
-
bonjour.
merci mais ce n'est pas ce que je souhaite.
et de tte façon pas possible car le pc se mettra forcément en veille au bout d'un moment sur l'invit de session.

donc up
qn d'autre à une idée ?
yg_be
Messages postés
8052
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
19 juillet 2019
396 > gt76000
Messages postés
4
Date d'inscription
jeudi 11 juillet 2019
Statut
Membre
Dernière intervention
19 juillet 2019
-
ne peux-tu pas configurer la mise en veille pour laisse Outlook fonctionner?
je ne vois pas très bien ce qui te fait croire que tu peux faire travailler Outlook sur un ordinateur arrêté.
Commenter la réponse de yg_be