![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
![]() Date d'inscription: mai 2002
Messages: 4 974
|
Bonjour,
dans les règles de tri sur les messages sortant il y a seulement 'copier le message' mais pas 'déplacer le message'. Y-a-t'il un moyen simple de faire un déplacement plutôt qu'une copie ? C'est d'autant plus bizard que pour les messages sortant c'est l'une des promière options
__________________
Delphi : 264 sources à consulter/télécharger ! |
|
|
|
|
|
#2 (permalink) |
![]() |
Salut Nono,
C'est vrai que dans les règles tu as 'déplacer une copie vers le dossier spécifié' cela créer une copie du mail qui est placée dans le dossier donc tu te retrouve avec une copie dans éléments envoyés + une copie dans le dossier spécifié. autre solution serait de créer une macro et ensuite tu créer une règle qui sur un message sortant exécute la macro Dolphy
__________________
Initiation au VBA d'Outlook Je ne réponds pas aux questions techniques par MP
|
|
|
|
|
|
#3 (permalink) |
![]() Date d'inscription: mai 2002
Messages: 4 974
|
Va falloir que je fasse du VBA alors
![]() Je regarde dés que j'ai le temps.
__________________
Delphi : 264 sources à consulter/télécharger ! |
|
|
|
|
|
#5 (permalink) |
![]() |
Salut Nono,
voici un petit code qui s'exécute sur l'envoi d'un mail, par défaut dans un dossier appelé "dolphy_essais", copie le code dans le module ThisOutlookSession : Code :
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) Dim objNSpace As NameSpace Dim fldDestination As MAPIFolder If Not Item.Class = olMail Then Exit Sub Set objNSpace = Application.GetNamespace("MAPI") Set fldDestination = objNSpace.Folders("Dossiers personnels").Folders("Boîte de réception").Folders("dolphy_essais") Set Item.SaveSentMessageFolder = fldDestination End Sub Code :
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) Dim objNSpace As namespace Dim fldDestination As MAPIFolder Dim items As MailItem If Not Item.Class = olMail Then Exit Sub Set objNSpace = Application.GetNamespace("MAPI") Set fldDestination = objNSpace.PickFolder Set Item.SaveSentMessageFolder = fldDestination End Sub
__________________
Initiation au VBA d'Outlook Je ne réponds pas aux questions techniques par MP
|
|
|
|
|
|
#6 (permalink) |
![]() Date d'inscription: mai 2002
Messages: 4 974
|
![]() Ta fonction brutte fonctionne, mais j'ai essayé d'ajouter un tri en fonction de l'adresse émetrice qui ne fonctionne pas : Code :
Private Sub Application_ItemSend(ByVal Item As Object, Cancel As Boolean) Dim objNSpace As NameSpace Dim fldDestination As MAPIFolder If Not Item.Class = olMail Then Exit Sub Set objNSpace = Application.GetNamespace("MAPI") 'Set fldDestination = objNSpace.Folders("Dossiers personnels").Folders("éléments envoyés").Folders("test") If InStr(1, Item.SenderEmailAddress, "Nono40@redaction-developpez.com", vbTextCompare) > 0 Then Set fldDestination = objNSpace.Folders("Dossiers personnels").Folders("éléments envoyés").Folders("DVP Nono40") Else If Item.SenderEmailAddress = "Delphi@redaction-developpez.com" Then Set fldDestination = objNSpace.Folders("Dossiers personnels").Folders("éléments envoyés").Folders("DVP Delphi") Else Set fldDestination = objNSpace.Folders("Dossiers personnels").Folders("éléments envoyés").Folders("Test") End If End If Set Item.SaveSentMessageFolder = fldDestination End Sub ![]() PS : Pour info la macro est exécutée quand on clique sur "Envoyer" et donc avant qu'il soit réellement envoyé par "Envoyer/Recevoir", mais ce n'est pas génant.
__________________
Delphi : 264 sources à consulter/télécharger ! |
|
|
|
|
|
#7 (permalink) |
![]() |
Salut,
Le soucis est le fait que le mail n'est pas envoyé donc on n'a pas l'info SenderMailAdress, sous OL2007 une nouvelle méthode permet de connaître le compte expéditeur : SendUsingAccount de ce qui est de 2003 je n'ai jamais eu à le faire, sinon autre méthode récupérer le EntryID du mail et après avoir envoyé rechercher le mail pour le déplacer vers le dossier adéquat, c'est peut être pas la meilleure solution mais ça peut fonctionner. Dolphy
__________________
Initiation au VBA d'Outlook Je ne réponds pas aux questions techniques par MP
|
|
|
|
|
|
#8 (permalink) | |
![]() Date d'inscription: mai 2002
Messages: 4 974
|
Citation:
- La copie est faite au moment ou on clique sur 'envoyer' et non pas au moment ou l'envoi est fait. Le mail part donc dans 'Eléments envoyés' alors qu'il n'est... pas envoyé. - La copie est marquée comme non lue... Ce qui m'a fait vérfier que les règles ne sont pas exécutées à l'envoi réel mais au placement du mail dans Boite d'envoi. Ca exclu donc direct tout passage par ce point. J'ai vu aussi en passant que l'on ne pouvait pas appeler une macro via une règle, il fallait en faire une Dll externe J'ai quand même du mal à piger comment MS à pu oublier que l'on veuille trier les mails qui partent
__________________
Delphi : 264 sources à consulter/télécharger ! Dernière modification par Dolphy35 ; 09/05/2008 à 16h25 |
|
|
|
|
|
|
#9 (permalink) | ||
|
Membre éprouvé
![]() Date d'inscription: mars 2006
Localisation: Tourcoing
Âge: 37
Messages: 492
|
Salut,
la méthode Citation:
L'événement itemSEND se produit quand on clique sur envoyer ensuite le mail va dans la boite d'envoi puis une copie dans éléments envoyés ou le dossier paramétré dans les options. Citation:
__________________
Have a nice day. ![]() Oliv' OUI à l'utilisation, NON au « copillage » Merci de citer la source Dernière modification par Oliv- ; 20/05/2008 à 16h58 |
||
|
|
|
|
|
#10 (permalink) | ||
![]() |
Salut,
Citation:
Comment créer un script dans une règle d'arrivée d'un message ?Dolphy
__________________
Initiation au VBA d'Outlook Je ne réponds pas aux questions techniques par MP
|
||
|
|
|
|
|
#11 (permalink) |
|
Membre éprouvé
![]() Date d'inscription: mars 2006
Localisation: Tourcoing
Âge: 37
Messages: 492
|
Oui effectivement juste à la reception
__________________
Have a nice day. ![]() Oliv' OUI à l'utilisation, NON au « copillage » Merci de citer la source |
|
|
|
![]() |
![]() |
||
[Outlook 2003]Déplacer/trier automatiquement les mail sortant
|
||
Offres d'
emploi informatique
sur Lesjeudis.com
|
| Outils de la discussion | |
|
|