Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Circé
Bonjour,
L'archivage automatique ne s'occupe pas des messages lus ou non lus. et je ne vois pas de possibilité de faire une règle sur l'ancienneté relative des messages... En conséquence, je ne vois rien d'automatique...
Circé http://faqword.free.fr
Sylviane a formulé ce vendredi :
Bonjour, Je voudrais programmer un archivage des messages lus dans ma boîte de réception chaque semaine. Est-ce possible?
Merci
Bonjour,
L'archivage automatique ne s'occupe pas des messages lus ou non lus.
et je ne vois pas de possibilité de faire une règle sur l'ancienneté
relative des messages...
En conséquence, je ne vois rien d'automatique...
Circé
http://faqword.free.fr
Sylviane a formulé ce vendredi :
Bonjour,
Je voudrais programmer un archivage des messages lus dans ma boîte de
réception chaque semaine. Est-ce possible?
L'archivage automatique ne s'occupe pas des messages lus ou non lus. et je ne vois pas de possibilité de faire une règle sur l'ancienneté relative des messages... En conséquence, je ne vois rien d'automatique...
Circé http://faqword.free.fr
Sylviane a formulé ce vendredi :
Bonjour, Je voudrais programmer un archivage des messages lus dans ma boîte de réception chaque semaine. Est-ce possible?
Merci
Spectre
Bonsoir,
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub
Bye
Bonsoir,
Ci dessous le code qui devrait faire l'affaire.
Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout
document présent dans la boite de reception qui a été lu et reçu depuis
plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de
reception"
-
Private Sub Application_Startup()
On Error Resume Next
Dim olItem As Mailitem
Dim objInbox As MAPIFolder
Dim oSelection
Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI")
Set objInbox = objNS.GetDefaultFolder(olFolderInbox)
Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count
Set olItem = oSelection.Item(i)
If oSelection.Count <> 0 Then ' si il ya des mails
If olItem.UnRead = False And olItem.ReceivedTime < Date
- 7 Then
olItem.Move test
Else
End If
End If
Next
End Sub
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub
Bye
Sylviane
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai créé un module et copier le code mais il faut que j'aille dans visual basic pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub
Bye
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai
créé un module et copier le code mais il faut que j'aille dans visual basic
pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a
sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire.
Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout
document présent dans la boite de reception qui a été lu et reçu depuis
plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de
reception"
-
Private Sub Application_Startup()
On Error Resume Next
Dim olItem As Mailitem
Dim objInbox As MAPIFolder
Dim oSelection
Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI")
Set objInbox = objNS.GetDefaultFolder(olFolderInbox)
Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count
Set olItem = oSelection.Item(i)
If oSelection.Count <> 0 Then ' si il ya des mails
If olItem.UnRead = False And olItem.ReceivedTime < Date
- 7 Then
olItem.Move test
Else
End If
End If
Next
End Sub
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai créé un module et copier le code mais il faut que j'aille dans visual basic pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub
Bye
Spectre
Bonjour, Il ne faut pas copier le code dans un module. Il est plus simple de le copier directement dans "thisoutlooksession" qui s'affiche à gauche quand vous lancez VBA.
Il suffit pour cela de double cliquer sur "thisoutlooksession" et une fenêtre s'ouvre.
Si vous voulez le laisser dans un module, il faut supprimer la première et dernièr ligne du code envoyé et - remplacer la première ligne par "public function archiver()" - remplacer la denière ligne par "end function"
- dans le formulaire ouvert en double cliquant sur "thisoutlooksession", copier Private Sub Application_Startup() call archiver end sub
A l'ouverture d'outlook, le code se lancera auomatiquement
Bye
Sylviane a utilisé son clavier pour écrire :
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai créé un module et copier le code mais il faut que j'aille dans visual basic pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub
Bye
Bonjour,
Il ne faut pas copier le code dans un module. Il est plus simple de le
copier directement dans "thisoutlooksession" qui s'affiche à gauche
quand vous lancez VBA.
Il suffit pour cela de double cliquer sur "thisoutlooksession" et une
fenêtre s'ouvre.
Si vous voulez le laisser dans un module, il faut supprimer la première
et dernièr ligne du code envoyé et
- remplacer la première ligne par "public function archiver()"
- remplacer la denière ligne par "end function"
- dans le formulaire ouvert en double cliquant sur
"thisoutlooksession",
copier
Private Sub Application_Startup()
call archiver
end sub
A l'ouverture d'outlook, le code se lancera auomatiquement
Bye
Sylviane a utilisé son clavier pour écrire :
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai
créé un module et copier le code mais il faut que j'aille dans visual basic
pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a
sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire.
Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout
document présent dans la boite de reception qui a été lu et reçu depuis
plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de
reception"
-
Private Sub Application_Startup()
On Error Resume Next
Dim olItem As Mailitem
Dim objInbox As MAPIFolder
Dim oSelection
Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI")
Set objInbox = objNS.GetDefaultFolder(olFolderInbox)
Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count
Set olItem = oSelection.Item(i)
If oSelection.Count <> 0 Then ' si il ya des mails
If olItem.UnRead = False And olItem.ReceivedTime < Date
- 7 Then
olItem.Move test
Else
End If
End If
Next
End Sub
Bonjour, Il ne faut pas copier le code dans un module. Il est plus simple de le copier directement dans "thisoutlooksession" qui s'affiche à gauche quand vous lancez VBA.
Il suffit pour cela de double cliquer sur "thisoutlooksession" et une fenêtre s'ouvre.
Si vous voulez le laisser dans un module, il faut supprimer la première et dernièr ligne du code envoyé et - remplacer la première ligne par "public function archiver()" - remplacer la denière ligne par "end function"
- dans le formulaire ouvert en double cliquant sur "thisoutlooksession", copier Private Sub Application_Startup() call archiver end sub
A l'ouverture d'outlook, le code se lancera auomatiquement
Bye
Sylviane a utilisé son clavier pour écrire :
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai créé un module et copier le code mais il faut que j'aille dans visual basic pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub
Bye
Sylviane
Encore merci. J'ai déjà fait beaucoup de macros en Excell; mais jamais en Outlook. C'est la première qui est la + difficile, il ne me reste plus qu'à continuer
Bonjour, Il ne faut pas copier le code dans un module. Il est plus simple de le copier directement dans "thisoutlooksession" qui s'affiche à gauche quand vous lancez VBA.
Il suffit pour cela de double cliquer sur "thisoutlooksession" et une fenêtre s'ouvre.
Si vous voulez le laisser dans un module, il faut supprimer la première et dernièr ligne du code envoyé et - remplacer la première ligne par "public function archiver()" - remplacer la denière ligne par "end function"
- dans le formulaire ouvert en double cliquant sur "thisoutlooksession", copier Private Sub Application_Startup() call archiver end sub
A l'ouverture d'outlook, le code se lancera auomatiquement
Bye
Sylviane a utilisé son clavier pour écrire :
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai créé un module et copier le code mais il faut que j'aille dans visual basic pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub
Bye
Encore merci. J'ai déjà fait beaucoup de macros en Excell; mais jamais en
Outlook. C'est la première qui est la + difficile, il ne me reste plus qu'à
continuer
Bonjour,
Il ne faut pas copier le code dans un module. Il est plus simple de le
copier directement dans "thisoutlooksession" qui s'affiche à gauche
quand vous lancez VBA.
Il suffit pour cela de double cliquer sur "thisoutlooksession" et une
fenêtre s'ouvre.
Si vous voulez le laisser dans un module, il faut supprimer la première
et dernièr ligne du code envoyé et
- remplacer la première ligne par "public function archiver()"
- remplacer la denière ligne par "end function"
- dans le formulaire ouvert en double cliquant sur
"thisoutlooksession",
copier
Private Sub Application_Startup()
call archiver
end sub
A l'ouverture d'outlook, le code se lancera auomatiquement
Bye
Sylviane a utilisé son clavier pour écrire :
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai
créé un module et copier le code mais il faut que j'aille dans visual basic
pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a
sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire.
Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout
document présent dans la boite de reception qui a été lu et reçu depuis
plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de
reception"
-
Private Sub Application_Startup()
On Error Resume Next
Dim olItem As Mailitem
Dim objInbox As MAPIFolder
Dim oSelection
Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI")
Set objInbox = objNS.GetDefaultFolder(olFolderInbox)
Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count
Set olItem = oSelection.Item(i)
If oSelection.Count <> 0 Then ' si il ya des mails
If olItem.UnRead = False And olItem.ReceivedTime < Date
- 7 Then
olItem.Move test
Else
End If
End If
Next
End Sub
Encore merci. J'ai déjà fait beaucoup de macros en Excell; mais jamais en Outlook. C'est la première qui est la + difficile, il ne me reste plus qu'à continuer
Bonjour, Il ne faut pas copier le code dans un module. Il est plus simple de le copier directement dans "thisoutlooksession" qui s'affiche à gauche quand vous lancez VBA.
Il suffit pour cela de double cliquer sur "thisoutlooksession" et une fenêtre s'ouvre.
Si vous voulez le laisser dans un module, il faut supprimer la première et dernièr ligne du code envoyé et - remplacer la première ligne par "public function archiver()" - remplacer la denière ligne par "end function"
- dans le formulaire ouvert en double cliquant sur "thisoutlooksession", copier Private Sub Application_Startup() call archiver end sub
A l'ouverture d'outlook, le code se lancera auomatiquement
Bye
Sylviane a utilisé son clavier pour écrire :
MErci beaucoup pour votre réponse, cela marche mais pas automatiquement. J'ai créé un module et copier le code mais il faut que j'aille dans visual basic pour l'exécuter. Comment le faire automatiquement à l'ouverture? il y a sûrement un paramètre quelque part qui m'échappe Merci d'avance en tout cas
Sylviane
Bonsoir,
Ci dessous le code qui devrait faire l'affaire. Il déplacera dans le répertoire "test", à l'ouverture d'outlook, tout document présent dans la boite de reception qui a été lu et reçu depuis plus de 7 jours.
Pour le faire fonctionner
- créer un sous repertoire (que j'ai appelé "test" ici ) à la "boite de reception"
-
Private Sub Application_Startup() On Error Resume Next
Dim olItem As Mailitem Dim objInbox As MAPIFolder Dim oSelection Dim test As Outlook.MAPIFolder
Set objNS = Application.GetNamespace("MAPI") Set objInbox = objNS.GetDefaultFolder(olFolderInbox) Set oSelection = objInbox.Items
Set test = objInbox.Folders("test") 'répertoire de destination
For i = 1 To oSelection.Count Set olItem = oSelection.Item(i) If oSelection.Count <> 0 Then ' si il ya des mails If olItem.UnRead = False And olItem.ReceivedTime < Date - 7 Then olItem.Move test Else End If End If Next End Sub