Bonjour, et d'abord un grand mercià Etienne Bar pour le tutoriel (http://access.developpez.com/faq/?page=Outlook#outlook).
J'ai adapté la fonction au besoin ça donne ceci:J'appelle la fonction dans une procédure de cette façon :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 If MonAppliOutlook.Explorers.Count > 0 Then MsgBox "Outlook est déjà ouvert! " & vbNewLine & "La préparation du message ne peut pas se faire.", vbExclamation, "Envoi Automatique de mail" Exit Function Else Set MonMail = MonAppliOutlook.CreateItem(olMailItem) With MonMail .To = Adresse If Not IsNull(Cc) Then .Cc = Cc If Not IsNull(Bcc) Then .Bcc = Bcc .Subject = Objet .Body = corps If Piece <> "" Then Set MaPiece = .Attachments MaPiece.Add Piece, olByValue End If .Display .Send Msgenvoyé = True EnvoiMail = Msgenvoyé End With
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Select Case nbabs![NBABSENCE] Case 1 mailenvoye = EnvoiMail(nbabs![NomA], nbabs![PrenomA], nbabs![MAILA], titre1abs, corps1abs) 'If mailenvoye = True Then MsgBox ("mail 1 envoyé") Case 2 mailenvoye = EnvoiMail(nbabs![NomA], nbabs![PrenomA], nbabs![MAILA], titre2abs, corps2abs) 'If mailenvoye = True Then MsgBox ("mail 2 envoyé") Case 3 mailenvoye = EnvoiMail(nbabs![NomA], nbabs![PrenomA], nbabs![MAILA], titre3abs, corps3abs) 'If mailenvoye = True Then MsgBox ("mail 3 envoyé") End Select
- Symptômes :
- sur un test avec 3 envoi de mail a faire dans la procédure en pas à pas : ça fonctionne normalement
- en enlevant les points d'arrêt : le troisième mail part pas toujours, il s'arrête au deuxième!- Pistes:
- le send suivi du display, va trop vite pour lui (remplaçer par send uniquement en changeant le registre d'outlook pour ne pas être bloqué à l'envoi "car XP bloque"?)(quel registre?)
- mettre une fonction wait (10 secondes) après le send??? (ça existe?)
C'est singulier comme problème car j'ai déjà utilisé: et
mais je n'ai rien trouvé de sérieux à part (le petit logiciel clickyes)
Merci de votre aide!
Partager