Déplacer les Mails d'un dossier vers un PST
Le
jost.4m
Avec l'aide VB d'Outlook 2003, j'arrive à déplacer des mails de ma
boîte de réception vers un dossier en fonction de l'éxpéditeur (cela
peut remplacer les rêgles qui ne sont pas toujours pratiques lorsqu'on
en a beaucoup).
voici le code:
Sub MoveItems()
Dim myOlApp As New Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myInbox As Outlook.MAPIFolder
Dim myDestFolder As Outlook.MAPIFolder
Dim myItems As Outlook.Items
Dim myItem As Object
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myInbox = myNameSpace.GetDefaultFolder(olFolderInbox)
Set myItems = myInbox.Items
Set myDestFolder = myInbox.Folders("Test 1")
Set myItem = myItems.Find("[SenderName] = 'Dupont Jean'")
While TypeName(myItem) <> "Nothing"
myItem.Move myDestFolder
Set myItem = myItems.FindNext
Wend
Set myDestFolder = myInbox.Folders("Test 2")
Set myItem = myItems.Find("[SenderName] = 'Durand Yves'")
While TypeName(myItem) <> "Nothing"
myItem.Move myDestFolder
Set myItem = myItems.FindNext
Wend
End Sub
Mais ce que je voudrais, c'est déplacer les messages du sous-dossier
Test 1 de ma boîte de réception vers le dossier personnel c:\Archive
2007.PSt\Réception\Test 1, afin de vider ma boîte Mail.
Merci d'avance.
__________________
Salutations
Michel
boîte de réception vers un dossier en fonction de l'éxpéditeur (cela
peut remplacer les rêgles qui ne sont pas toujours pratiques lorsqu'on
en a beaucoup).
voici le code:
Sub MoveItems()
Dim myOlApp As New Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myInbox As Outlook.MAPIFolder
Dim myDestFolder As Outlook.MAPIFolder
Dim myItems As Outlook.Items
Dim myItem As Object
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myInbox = myNameSpace.GetDefaultFolder(olFolderInbox)
Set myItems = myInbox.Items
Set myDestFolder = myInbox.Folders("Test 1")
Set myItem = myItems.Find("[SenderName] = 'Dupont Jean'")
While TypeName(myItem) <> "Nothing"
myItem.Move myDestFolder
Set myItem = myItems.FindNext
Wend
Set myDestFolder = myInbox.Folders("Test 2")
Set myItem = myItems.Find("[SenderName] = 'Durand Yves'")
While TypeName(myItem) <> "Nothing"
myItem.Move myDestFolder
Set myItem = myItems.FindNext
Wend
End Sub
Mais ce que je voudrais, c'est déplacer les messages du sous-dossier
Test 1 de ma boîte de réception vers le dossier personnel c:\Archive
2007.PSt\Réception\Test 1, afin de vider ma boîte Mail.
Merci d'avance.
__________________
Salutations
Michel

Poser une question


Essaye avec ceci
Set Myperso = myNameSpace.Folders("Dossiers personnels").Folders("test 1")
--
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Have a nice day
Oliv'
Outlook : http://faq.outlook.free.fr/
les archives : http://groups.google.com/group/micr...fr.outlook
Dernière chance http://www.outlookcode.com/
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Excusez mais je n'ai pas trop l'habitude sur ce forum (en fait j'avais
supprimé le message pour le refaire plus tard).
Et si je veux déplacer les messages de ma boîte de réception Divers
vers Archive 2007RéceptionDivers, auriez vous le code le plus simple
sachant que je peux ensuite copier le code et changer mes intitulés
pour les autres sous-dossiers?
Merci d'avance
Ton code est presque bon, j'ai pas testé celui-ci mais ca devrait marcher.
Sub MoveItems()
Dim myOlApp As New Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myInbox As Outlook.MAPIFolder
Dim myDestFolder As Outlook.MAPIFolder
Dim myItems As Outlook.Items
Dim myItem As Object
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set myInbox = myNameSpace.GetDefaultFolder(olFolderInbox).folders("Divers")
Set myItems = myInbox.Items
Set myDestFolder = myNameSpace.Folders("Dossiers
personnels").Folders("Divers")
For each Myitem in myItems
Myitem.Move myDestFolder
Next
Set myNameSpace=nothing
Set myInbox=nothing
Set myItems =nothing
Set myDestFolder =nothing
End Sub
Oliv'
Merci Oliv, je le testerai demain.
Bonjour
Merci beaucoup, cela marche super.
Bonne journée
Michel