OVH Cloud OVH Cloud

outlook : détruire courrier indésirable

16 réponses
Avatar
anatole
Bonjour,

Nouveau ici ! et totalement novice en VisualBasic !!!
Dans outlook 2000 : Je voudrais pouvoir détruire définitivement les junk
mail que je récupère dans un dossier spécifique "courrier indésirable", dans
ce dossier - sans avoir à les emporter d'abord dans dossier "élements
supprimés" ????

Vbasic peut-il m'apporter une solution ?,

Bonne journée

6 réponses

1 2
Avatar
Fred
Dans son message uSqU$
Clive Lumb nous dit :

"Fred" a écrit dans le message de
news:
Dans son message %
Clive Lumb nous dit :

"scraper" a écrit dans le message de
news:
Bonjour Patrice Henrio, dans le message
news:
tu disais :


Pour revenir à la question de départ, langage ou pas, il y de
multiples façons de réaliser ce qu'il veut soit en vb, vba, dos,
Windows (qui est un OS aussi), script etc. j'en passe et des
meilleurs. L'algorithmes est des plus simples :

Sélectionner le répertoire à effacer
Effacer le répertoire sélectionné.



sauf que dans Outlook, je ne sais pas si tu peux acéder de
"l'extérieur" aux "dossiers" créés par l'utilisateur, dans Outlook
même, et ne sélectionner que quelques éléments pour la suppression
...

d'abord .... Outlook, ou Outlook Express ?



Puis je vous conseiller de passer illico presto à Outlook 2003 dont
le filtre spam est une merveille - en plus le dossier "courrier
indésirable" comporte une command econtextuelle "vider ce dossier"
tout comme le corbeille.

Ensuite si l'on veut automatiser la tâche on peut créer un macro
(comme on fait dans word ou excel) en enregistrant vos actions.



Bonsoir,
Justement, en voyant le post d'Anatole c'est ce que je me suis
empressé d'essayer. Et non, pas d'enregistrement automatique chez
moi :-( Peux-tu nous en dire plus ? Une option à activer quelque
part ?

J'ai fait des macros sous Outlook 2000, en ... 2000 et j'ai un peu
la flemme de me replonger dans la librairie d'objets Outlook ;-)

Ceci dit, cela ne m'a pas l'air bien méchant à mettre en oeuvre.
Mais est-ce bien utile ? A moins de placer la macro en AutoClose (ou
un truc dans le genre), il faudra tout de même un clic ou deux. Et
comme tu le signales, il y a le menu contextuel !



J'ai parlé un peu rapidement... en effet on ne peut pas "enregistrer"
des actions comme Macro. Pourtant je suis convaincu de l'avoir fait
avec une version plus ancienne...



Il me semble aussi, c'est pourquoi j'ai pensé à une éventuelle sécurité à
faire sauter - il y a eu beaucoup d'améliorations de ce côté avec 2003, on
ne va certainement pas s'en plaindre :-)


En guise de mea culpa, voici le code pour vider (de façon permanente)
le contenu du dossier de courrier indésirable

Public Sub ViderSpam()
Dim MonExplorer As Explorer
Dim SpamFolder As MAPIFolder
Set MonExplorer > Application.Session.GetDefaultFolder(olFolderJunk).GetExplorer
Set SpamFolder = MonExplorer.CurrentFolder
While SpamFolder.Items.Count > 0
SpamFolder.Items.Remove 1
Wend
End Sub

Attacher ce code à un bouton et voilà



Anatole devrait être satisfait, c'est exactement ce qu'il voulait.

Tu peux aussi mettre un appel à ta procédure dans Application_Quit, ce qui
évite le clic et rend systématique le vidage.
Mais alors se pose le problème des avertissements de sécurité.
En faible, plus aucune protection :-(
En moyen, un avertissement à chaque lancement
En élevé, cela ne s'exécute même pas.
Il faut donc signer la macro : je n'ai pas d'expérience en la matière, en
quoi cela consiste-t-il ?


--
Fred
Avatar
Clive Lumb
Fred wrote:
Dans son message uSqU$
Clive Lumb nous dit :

"Fred" a écrit dans le message de
news:
Dans son message %
Clive Lumb nous dit :

"scraper" a écrit dans le message de
news:
Bonjour Patrice Henrio, dans le message
news:
tu disais :


Pour revenir à la question de départ, langage ou pas, il y de
multiples façons de réaliser ce qu'il veut soit en vb, vba, dos,
Windows (qui est un OS aussi), script etc. j'en passe et des
meilleurs. L'algorithmes est des plus simples :

Sélectionner le répertoire à effacer
Effacer le répertoire sélectionné.



sauf que dans Outlook, je ne sais pas si tu peux acéder de
"l'extérieur" aux "dossiers" créés par l'utilisateur, dans Outlook
même, et ne sélectionner que quelques éléments pour la suppression
...

d'abord .... Outlook, ou Outlook Express ?



Puis je vous conseiller de passer illico presto à Outlook 2003 dont
le filtre spam est une merveille - en plus le dossier "courrier
indésirable" comporte une command econtextuelle "vider ce dossier"
tout comme le corbeille.

Ensuite si l'on veut automatiser la tâche on peut créer un macro
(comme on fait dans word ou excel) en enregistrant vos actions.



Bonsoir,
Justement, en voyant le post d'Anatole c'est ce que je me suis
empressé d'essayer. Et non, pas d'enregistrement automatique chez
moi :-( Peux-tu nous en dire plus ? Une option à activer quelque
part ?

J'ai fait des macros sous Outlook 2000, en ... 2000 et j'ai un peu
la flemme de me replonger dans la librairie d'objets Outlook ;-)

Ceci dit, cela ne m'a pas l'air bien méchant à mettre en oeuvre.
Mais est-ce bien utile ? A moins de placer la macro en AutoClose (ou
un truc dans le genre), il faudra tout de même un clic ou deux. Et
comme tu le signales, il y a le menu contextuel !



J'ai parlé un peu rapidement... en effet on ne peut pas "enregistrer"
des actions comme Macro. Pourtant je suis convaincu de l'avoir fait
avec une version plus ancienne...



Il me semble aussi, c'est pourquoi j'ai pensé à une éventuelle
sécurité à faire sauter - il y a eu beaucoup d'améliorations de ce
côté avec 2003, on ne va certainement pas s'en plaindre :-)


En guise de mea culpa, voici le code pour vider (de façon permanente)
le contenu du dossier de courrier indésirable

Public Sub ViderSpam()
Dim MonExplorer As Explorer
Dim SpamFolder As MAPIFolder
Set MonExplorer >> Application.Session.GetDefaultFolder(olFolderJunk).GetExplorer
Set SpamFolder = MonExplorer.CurrentFolder
While SpamFolder.Items.Count > 0
SpamFolder.Items.Remove 1
Wend
End Sub

Attacher ce code à un bouton et voilà



Anatole devrait être satisfait, c'est exactement ce qu'il voulait.

Tu peux aussi mettre un appel à ta procédure dans Application_Quit,
ce qui évite le clic et rend systématique le vidage.
Mais alors se pose le problème des avertissements de sécurité.
En faible, plus aucune protection :-(
En moyen, un avertissement à chaque lancement
En élevé, cela ne s'exécute même pas.
Il faut donc signer la macro : je n'ai pas d'expérience en la
matière, en quoi cela consiste-t-il ?



D'abord il faut avoir pensé à installer la signature des macros lors de
l'install d'Office, mais peut toujours s'ajouter après.
Je n'ai pas joué avec sous 2003, mais sous 2000 il n'y en avait pas besoin
si le macro était utilisé sur l'Outlook "d'origine" - par contre il fallait
signer si on distribuait le macro aux autres (d'un groupe de travail par
exemple).


Clive
Avatar
Clive Lumb
>"anatole" a écrit dans le message de


news:%>
Pour un premier essai de newsGroup : je ne suis pas déçu ! par toutes les


réponse que je vais regarder plus attentivement

Tu trouveras que ce groupe est un des plus agréables de tous les newsgroups
francophones; pas de "flames", des gens qui essaient de comprendre ce que tu
veux faire sans te prendre du haut, et surtout des véritables "as" de
programmation VB qui sont prêts à partager leur savoir.

La seul chose à éviter c'est de dire "J'utilise le File System Object" -
dans ce cas il y en a certains qui vont t'expliquer poliment où tu te
trompes..

Evidemment Clive Lumb a raison :
> Puis je vous conseiller de passer illico presto à Outlook 2003 dont le
> filtre spam est une merveille - en plus le dossier "courrier
> indésirable" comporte une commande contextuelle "vider ce dossier"
> tout comme le corbeille.
>


Comme quoi j'ai raison de vouloir vider mes junkMail à part ! Depuis 20 ans


...nous attendons toujours logiciels vraiment conçus "côté >utilisateurs"
!!!!!!

Un petit conseil, mettre à jour Office/Outlook 2003 assez rapidement, car il
y a eu des améliorations coté spam dans le SP1.

Cela dit j'ai envie d'essayer de bidouiller une personnalisation de mes


logiciels en m'essayant au Visual Basic même si je ne suis vraiement >qu'un
amateur !!

Si tu restes avec VBA (c.a.d. le VB d'Office) tu n'auras pas trop de
problèmes avec Outlook, il te laissera faire ce que tu veux (dans la limite
de ce qu'il te propose de faire...). Si tu commences à vouloir contrôler
Outlook avec VB, le vrai, tu auras rapidement besoin de la bibliothèque
"Redemption for Outlook" qui évite bien des avertissements de sécurité.

Bon courage

Clive
Avatar
Fred
Dans son message
Clive Lumb nous dit :

Fred wrote:
Dans son message uSqU$
Clive Lumb nous dit :

"Fred" a écrit dans le message de
news:
Dans son message %
Clive Lumb nous dit :

"scraper" a écrit dans le message de
news:
Bonjour Patrice Henrio, dans le message
news:
tu disais :


Pour revenir à la question de départ, langage ou pas, il y de
multiples façons de réaliser ce qu'il veut soit en vb, vba, dos,
Windows (qui est un OS aussi), script etc. j'en passe et des
meilleurs. L'algorithmes est des plus simples :

Sélectionner le répertoire à effacer
Effacer le répertoire sélectionné.



sauf que dans Outlook, je ne sais pas si tu peux acéder de
"l'extérieur" aux "dossiers" créés par l'utilisateur, dans
Outlook même, et ne sélectionner que quelques éléments pour la
suppression ...

d'abord .... Outlook, ou Outlook Express ?



Puis je vous conseiller de passer illico presto à Outlook 2003
dont le filtre spam est une merveille - en plus le dossier
"courrier indésirable" comporte une command econtextuelle "vider
ce dossier" tout comme le corbeille.

Ensuite si l'on veut automatiser la tâche on peut créer un macro
(comme on fait dans word ou excel) en enregistrant vos actions.



Bonsoir,
Justement, en voyant le post d'Anatole c'est ce que je me suis
empressé d'essayer. Et non, pas d'enregistrement automatique chez
moi :-( Peux-tu nous en dire plus ? Une option à activer quelque
part ?

J'ai fait des macros sous Outlook 2000, en ... 2000 et j'ai un peu
la flemme de me replonger dans la librairie d'objets Outlook ;-)

Ceci dit, cela ne m'a pas l'air bien méchant à mettre en oeuvre.
Mais est-ce bien utile ? A moins de placer la macro en AutoClose
(ou un truc dans le genre), il faudra tout de même un clic ou
deux. Et comme tu le signales, il y a le menu contextuel !



J'ai parlé un peu rapidement... en effet on ne peut pas
"enregistrer" des actions comme Macro. Pourtant je suis convaincu
de l'avoir fait avec une version plus ancienne...



Il me semble aussi, c'est pourquoi j'ai pensé à une éventuelle
sécurité à faire sauter - il y a eu beaucoup d'améliorations de ce
côté avec 2003, on ne va certainement pas s'en plaindre :-)


En guise de mea culpa, voici le code pour vider (de façon
permanente) le contenu du dossier de courrier indésirable

Public Sub ViderSpam()
Dim MonExplorer As Explorer
Dim SpamFolder As MAPIFolder
Set MonExplorer >>> Application.Session.GetDefaultFolder(olFolderJunk).GetExplorer
Set SpamFolder = MonExplorer.CurrentFolder
While SpamFolder.Items.Count > 0
SpamFolder.Items.Remove 1
Wend
End Sub

Attacher ce code à un bouton et voilà



Anatole devrait être satisfait, c'est exactement ce qu'il voulait.

Tu peux aussi mettre un appel à ta procédure dans Application_Quit,
ce qui évite le clic et rend systématique le vidage.
Mais alors se pose le problème des avertissements de sécurité.
En faible, plus aucune protection :-(
En moyen, un avertissement à chaque lancement
En élevé, cela ne s'exécute même pas.
Il faut donc signer la macro : je n'ai pas d'expérience en la
matière, en quoi cela consiste-t-il ?



D'abord il faut avoir pensé à installer la signature des macros lors
de l'install d'Office, mais peut toujours s'ajouter après.
Je n'ai pas joué avec sous 2003, mais sous 2000 il n'y en avait pas
besoin si le macro était utilisé sur l'Outlook "d'origine" - par
contre il fallait signer si on distribuait le macro aux autres (d'un
groupe de travail par exemple).



Oui, c'est cela. Mais il faut avoir un certificat et je ne sais pas comment
l'obtenir.
Je ne sais pas si cela a un rapport avec ce que j'ai installé sur un server
2003 pour faire du https sur une application intranet. Je vais chercher dans
l'aide ce qu'il est dit à ce sujet.
Merci :-)

--
Fred
Avatar
Fred
Dans son message
Clive Lumb nous dit :

Fred wrote:
Dans son message uSqU$
Clive Lumb nous dit :

"Fred" a écrit dans le message de
news:
Dans son message %
Clive Lumb nous dit :

"scraper" a écrit dans le message de
news:
Bonjour Patrice Henrio, dans le message
news:
tu disais :


Pour revenir à la question de départ, langage ou pas, il y de
multiples façons de réaliser ce qu'il veut soit en vb, vba, dos,
Windows (qui est un OS aussi), script etc. j'en passe et des
meilleurs. L'algorithmes est des plus simples :

Sélectionner le répertoire à effacer
Effacer le répertoire sélectionné.



sauf que dans Outlook, je ne sais pas si tu peux acéder de
"l'extérieur" aux "dossiers" créés par l'utilisateur, dans
Outlook même, et ne sélectionner que quelques éléments pour la
suppression ...

d'abord .... Outlook, ou Outlook Express ?



Puis je vous conseiller de passer illico presto à Outlook 2003
dont le filtre spam est une merveille - en plus le dossier
"courrier indésirable" comporte une command econtextuelle "vider
ce dossier" tout comme le corbeille.

Ensuite si l'on veut automatiser la tâche on peut créer un macro
(comme on fait dans word ou excel) en enregistrant vos actions.



Bonsoir,
Justement, en voyant le post d'Anatole c'est ce que je me suis
empressé d'essayer. Et non, pas d'enregistrement automatique chez
moi :-( Peux-tu nous en dire plus ? Une option à activer quelque
part ?

J'ai fait des macros sous Outlook 2000, en ... 2000 et j'ai un peu
la flemme de me replonger dans la librairie d'objets Outlook ;-)

Ceci dit, cela ne m'a pas l'air bien méchant à mettre en oeuvre.
Mais est-ce bien utile ? A moins de placer la macro en AutoClose
(ou un truc dans le genre), il faudra tout de même un clic ou
deux. Et comme tu le signales, il y a le menu contextuel !



J'ai parlé un peu rapidement... en effet on ne peut pas
"enregistrer" des actions comme Macro. Pourtant je suis convaincu
de l'avoir fait avec une version plus ancienne...



Il me semble aussi, c'est pourquoi j'ai pensé à une éventuelle
sécurité à faire sauter - il y a eu beaucoup d'améliorations de ce
côté avec 2003, on ne va certainement pas s'en plaindre :-)


En guise de mea culpa, voici le code pour vider (de façon
permanente) le contenu du dossier de courrier indésirable

Public Sub ViderSpam()
Dim MonExplorer As Explorer
Dim SpamFolder As MAPIFolder
Set MonExplorer >>> Application.Session.GetDefaultFolder(olFolderJunk).GetExplorer
Set SpamFolder = MonExplorer.CurrentFolder
While SpamFolder.Items.Count > 0
SpamFolder.Items.Remove 1
Wend
End Sub

Attacher ce code à un bouton et voilà



Anatole devrait être satisfait, c'est exactement ce qu'il voulait.

Tu peux aussi mettre un appel à ta procédure dans Application_Quit,
ce qui évite le clic et rend systématique le vidage.
Mais alors se pose le problème des avertissements de sécurité.
En faible, plus aucune protection :-(
En moyen, un avertissement à chaque lancement
En élevé, cela ne s'exécute même pas.
Il faut donc signer la macro : je n'ai pas d'expérience en la
matière, en quoi cela consiste-t-il ?



D'abord il faut avoir pensé à installer la signature des macros lors
de l'install d'Office, mais peut toujours s'ajouter après.
Je n'ai pas joué avec sous 2003, mais sous 2000 il n'y en avait pas
besoin si le macro était utilisé sur l'Outlook "d'origine" - par
contre il fallait signer si on distribuait le macro aux autres (d'un
groupe de travail par exemple).


Clive



Cela n'aura pas été long :-)
Tout est ici :
http://office.microsoft.com/fr-fr/assistance/HP010446121036.aspx

--
Fred
Avatar
Clive Lumb
Fred wrote:
Dans son message
Clive Lumb nous dit :

Fred wrote:
Dans son message uSqU$
Clive Lumb nous dit :

"Fred" a écrit dans le message de
news:
Dans son message %
Clive Lumb nous dit :

"scraper" a écrit dans le message de
news:
Bonjour Patrice Henrio, dans le message
news:
tu disais :


Pour revenir à la question de départ, langage ou pas, il y de
multiples façons de réaliser ce qu'il veut soit en vb, vba,
dos, Windows (qui est un OS aussi), script etc. j'en passe et
des meilleurs. L'algorithmes est des plus simples :

Sélectionner le répertoire à effacer
Effacer le répertoire sélectionné.



sauf que dans Outlook, je ne sais pas si tu peux acéder de
"l'extérieur" aux "dossiers" créés par l'utilisateur, dans
Outlook même, et ne sélectionner que quelques éléments pour la
suppression ...

d'abord .... Outlook, ou Outlook Express ?



Puis je vous conseiller de passer illico presto à Outlook 2003
dont le filtre spam est une merveille - en plus le dossier
"courrier indésirable" comporte une command econtextuelle "vider
ce dossier" tout comme le corbeille.

Ensuite si l'on veut automatiser la tâche on peut créer un macro
(comme on fait dans word ou excel) en enregistrant vos actions.



Bonsoir,
Justement, en voyant le post d'Anatole c'est ce que je me suis
empressé d'essayer. Et non, pas d'enregistrement automatique chez
moi :-( Peux-tu nous en dire plus ? Une option à activer quelque
part ?

J'ai fait des macros sous Outlook 2000, en ... 2000 et j'ai un peu
la flemme de me replonger dans la librairie d'objets Outlook ;-)

Ceci dit, cela ne m'a pas l'air bien méchant à mettre en oeuvre.
Mais est-ce bien utile ? A moins de placer la macro en AutoClose
(ou un truc dans le genre), il faudra tout de même un clic ou
deux. Et comme tu le signales, il y a le menu contextuel !



J'ai parlé un peu rapidement... en effet on ne peut pas
"enregistrer" des actions comme Macro. Pourtant je suis convaincu
de l'avoir fait avec une version plus ancienne...



Il me semble aussi, c'est pourquoi j'ai pensé à une éventuelle
sécurité à faire sauter - il y a eu beaucoup d'améliorations de ce
côté avec 2003, on ne va certainement pas s'en plaindre :-)


En guise de mea culpa, voici le code pour vider (de façon
permanente) le contenu du dossier de courrier indésirable

Public Sub ViderSpam()
Dim MonExplorer As Explorer
Dim SpamFolder As MAPIFolder
Set MonExplorer >>>> Application.Session.GetDefaultFolder(olFolderJunk).GetExplorer
Set SpamFolder = MonExplorer.CurrentFolder
While SpamFolder.Items.Count > 0
SpamFolder.Items.Remove 1
Wend
End Sub

Attacher ce code à un bouton et voilà



Anatole devrait être satisfait, c'est exactement ce qu'il voulait.

Tu peux aussi mettre un appel à ta procédure dans Application_Quit,
ce qui évite le clic et rend systématique le vidage.
Mais alors se pose le problème des avertissements de sécurité.
En faible, plus aucune protection :-(
En moyen, un avertissement à chaque lancement
En élevé, cela ne s'exécute même pas.
Il faut donc signer la macro : je n'ai pas d'expérience en la
matière, en quoi cela consiste-t-il ?



D'abord il faut avoir pensé à installer la signature des macros lors
de l'install d'Office, mais peut toujours s'ajouter après.
Je n'ai pas joué avec sous 2003, mais sous 2000 il n'y en avait pas
besoin si le macro était utilisé sur l'Outlook "d'origine" - par
contre il fallait signer si on distribuait le macro aux autres (d'un
groupe de travail par exemple).


Clive



Cela n'aura pas été long :-)
Tout est ici :
http://office.microsoft.com/fr-fr/assistance/HP010446121036.aspx




Donc un coup de selfcert et le tour est joué !
1 2