VBA Outlook - Mail noté comme non envoyé

cs_rlapt Messages postés 63 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 25 juin 2013 - 23 août 2010 à 20:58
cs_rlapt Messages postés 63 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 25 juin 2013 - 24 août 2010 à 18:56
Bonjour,

J'ai fais une macro qui lorsque l'on appuie sur la touche envoyer d'un nouveau mail, enregistre ce mail dans un répertoire défini, puis rend la main à Outlook our l'envoyer.
Tout fonctionne correctement, mais je n'arrive pas à résoudre le problème suivant :

lorsque l'on reprend le mail enregistré sur le serveur, celui-ci est noté comme "non envoyé". Ceci est génant dans la mesure où si l'on met en copie ce fichier mail, l'interlocuteur peut contester que le mail est bien été envoyé.

De plus, la procédure sert également à définir le sujet du mail suivant une structure propre à notre socité. Il faut donc la lancer avant d'envoyer la mail.

J'ai trouvé dans la liste des propriétés du mail une variable .sent, mais elle n'est accessible qu'en lecture seule.

Avez-vous une idée à me proposer ?

Merci d'avance
RLAPT

3 réponses

cs_Jack Messages postés 14006 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 79
23 août 2010 à 23:47
Salut

L'idée serait de gérer l'insertion du sujet avant le départ, puis d'attendre la fin de l'envoi, qui se matérialise par l'arrivée d'un nouveau mail dans le dossier "Messages envoyés" : En recopiant ce mail là, tu n'auras, je pense, plus ce souci.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
shmurz Messages postés 6 Date d'inscription mardi 8 février 2005 Statut Membre Dernière intervention 24 août 2010
24 août 2010 à 11:06
En ce qui me concerne, j'avais fait une macro qui s'exécute à l'envoi d'un e-mail.

La macro en question est nommée :
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean)

Dans cette macro, j'instancie un objet comme ceci :

Dim MyMail As Outlook.MailItem
Set MyMail = Item

Et là, la propriété MyMail.Subject est modifiable à loisir.

Pour enregistrer l'e-mail dans un dossier voulu (ici, le dossier en cours), la méthode que j'utilise est :

Dim objFolder As MAPIFolder
Set objFolder = Application.ActiveExplorer.CurrentFolder
If Not objFolder Is Nothing Then
Set Item.SaveSentMessageFolder = objFolder
End If
0
cs_rlapt Messages postés 63 Date d'inscription lundi 6 octobre 2003 Statut Membre Dernière intervention 25 juin 2013
24 août 2010 à 18:56
bonjour et merci.

Je vais essayer les deux solutions. La solution de SCHMURZ me semble correspondre à mon souhait.

Merci à tous less deux

RLAPT
0
Rejoignez-nous