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

Fermé
gt76000 Messages postés 10 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 25 juillet 2019 - 11 juil. 2019 à 09:28
gt76000 Messages postés 10 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 25 juillet 2019 - 25 juil. 2019 à 10:31
Bonjour
j'ai lu la discussion suivante sur le forum
https://forums.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: https://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
A voir également:

1 réponse

yg_be Messages postés 22681 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 avril 2024 1 468
11 juil. 2019 à 09:47
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.
0
gt76000 Messages postés 10 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 25 juillet 2019
11 juil. 2019 à 12:05
ok donc comment faire pour que le 2eme code s’exécute sans aucune intervention en mon absence juste PC allumé en veille ? est-ce possible ?
0
yg_be Messages postés 22681 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 avril 2024 1 468 > gt76000 Messages postés 10 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 25 juillet 2019
11 juil. 2019 à 12:59
en veille: en session, avec Outlook en route? as-tu testé le deuxième code?
0
gt76000 Messages postés 10 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 25 juillet 2019
Modifié le 12 juil. 2019 à 08:52
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
0
yg_be Messages postés 22681 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 15 avril 2024 1 468 > gt76000 Messages postés 10 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 25 juillet 2019
12 juil. 2019 à 08:55
je pense que le mieux est de laisser Outlook fonctionner écran éteint.
0
gt76000 Messages postés 10 Date d'inscription jeudi 11 juillet 2019 Statut Membre Dernière intervention 25 juillet 2019
19 juil. 2019 à 10:36
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 ?
0