attribution automatique d'une catégorie à un répertoire
2 réponses
notme
Bonjour à tous,
je cherche à attribuer de manière automatique une catégorie aux mails
contenus dans un répertoire imap.
j'ai trouvé ce code sur
http://www.developpez.net/forums/d739494/logiciels/microsoft-office/outlook/vba-outlook/affecter-categorie-masse-aux-messages-dossier-outlook-2007-a/
Sub essai()
'Déclaration des Objets et variables
Dim MonApply As Outlook.Application
Dim Expl As Explorer
Dim myNameSpace As NameSpace
Dim myFolder As MAPIFolder
Dim myItems As Items
Dim xi As Integer
'Instance des Objets
Set MonApply = Outlook.Application 'Application Outlook
'Expl nous donne le dossier courant
Set Expl = ActiveExplorer
'Permet d'accéder à toutes les données Outlook qui y sont stockées
Set myNameSpace = MonApply.GetNamespace("MAPI")
'On recupère l'ID du dossier courant puis on se positionne dans ce
dossier
'pour recupérer tous les messages
Set myFolder =
myNameSpace.GetFolderFromID(Expl.CurrentFolder.EntryID)
'La variable myItems prendra comme valeur
'tous les messages du dossier courant
Set myItems = myFolder.Items
For xi = 1 To myItems.Count
myItems.Item(xi).Categories = myFolder.Name
Next xi
End
mais comme l'explique son auteur, ça ne fonctionne que pour l'email
sélectionné lors du lancement de la macro.
comment faire pour que tout le répertoire soit sélectionné ?
Si quelqu'un a une piste, je suis preneur.
Bonne journée à tous.
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
Mehdi HAMMADI
Bonjour,
Pourquoi ne pas utiliser à la place de votre macro tout simplement une règle qui va à la fois déplacer certains messages dans le dossier désigner et attribuer une catégorie.
Cela est faisable avec la version 2007 d'Outlook mais je n'ai pas vérifié pour la version 2003.
"notme" a écrit dans le message de groupe de discussion :
Bonjour à tous, je cherche à attribuer de manière automatique une catégorie aux mails contenus dans un répertoire imap. j'ai trouvé ce code sur http://www.developpez.net/forums/d739494/logiciels/microsoft-office/outlook/vba-outlook/affecter-categorie-masse-aux-messages-dossier-outlook-2007-a/
Sub essai()
'Déclaration des Objets et variables Dim MonApply As Outlook.Application Dim Expl As Explorer Dim myNameSpace As NameSpace Dim myFolder As MAPIFolder Dim myItems As Items Dim xi As Integer
'Instance des Objets Set MonApply = Outlook.Application 'Application Outlook
'Expl nous donne le dossier courant Set Expl = ActiveExplorer 'Permet d'accéder à toutes les données Outlook qui y sont stockées Set myNameSpace = MonApply.GetNamespace("MAPI")
'On recupère l'ID du dossier courant puis on se positionne dans ce dossier 'pour recupérer tous les messages Set myFolder = myNameSpace.GetFolderFromID(Expl.CurrentFolder.EntryID)
'La variable myItems prendra comme valeur 'tous les messages du dossier courant
Set myItems = myFolder.Items
For xi = 1 To myItems.Count myItems.Item(xi).Categories = myFolder.Name
Next xi
End
mais comme l'explique son auteur, ça ne fonctionne que pour l'email sélectionné lors du lancement de la macro. comment faire pour que tout le répertoire soit sélectionné ? Si quelqu'un a une piste, je suis preneur. Bonne journée à tous.
Bonjour,
Pourquoi ne pas utiliser à la place de votre macro tout simplement une règle
qui va à la fois déplacer certains messages dans le dossier désigner et
attribuer une catégorie.
Cela est faisable avec la version 2007 d'Outlook mais je n'ai pas vérifié
pour la version 2003.
"notme" <celegorm@infonie.fr> a écrit dans le message de groupe de
discussion : 61F2432E-4EEF-466C-9622-3054E2BA40E3@microsoft.com...
Bonjour à tous,
je cherche à attribuer de manière automatique une catégorie aux mails
contenus dans un répertoire imap.
j'ai trouvé ce code sur
http://www.developpez.net/forums/d739494/logiciels/microsoft-office/outlook/vba-outlook/affecter-categorie-masse-aux-messages-dossier-outlook-2007-a/
Sub essai()
'Déclaration des Objets et variables
Dim MonApply As Outlook.Application
Dim Expl As Explorer
Dim myNameSpace As NameSpace
Dim myFolder As MAPIFolder
Dim myItems As Items
Dim xi As Integer
'Instance des Objets
Set MonApply = Outlook.Application 'Application Outlook
'Expl nous donne le dossier courant
Set Expl = ActiveExplorer
'Permet d'accéder à toutes les données Outlook qui y sont stockées
Set myNameSpace = MonApply.GetNamespace("MAPI")
'On recupère l'ID du dossier courant puis on se positionne dans ce
dossier
'pour recupérer tous les messages
Set myFolder =
myNameSpace.GetFolderFromID(Expl.CurrentFolder.EntryID)
'La variable myItems prendra comme valeur
'tous les messages du dossier courant
Set myItems = myFolder.Items
For xi = 1 To myItems.Count
myItems.Item(xi).Categories = myFolder.Name
Next xi
End
mais comme l'explique son auteur, ça ne fonctionne que pour l'email
sélectionné lors du lancement de la macro.
comment faire pour que tout le répertoire soit sélectionné ?
Si quelqu'un a une piste, je suis preneur.
Bonne journée à tous.
Pourquoi ne pas utiliser à la place de votre macro tout simplement une règle qui va à la fois déplacer certains messages dans le dossier désigner et attribuer une catégorie.
Cela est faisable avec la version 2007 d'Outlook mais je n'ai pas vérifié pour la version 2003.
"notme" a écrit dans le message de groupe de discussion :
Bonjour à tous, je cherche à attribuer de manière automatique une catégorie aux mails contenus dans un répertoire imap. j'ai trouvé ce code sur http://www.developpez.net/forums/d739494/logiciels/microsoft-office/outlook/vba-outlook/affecter-categorie-masse-aux-messages-dossier-outlook-2007-a/
Sub essai()
'Déclaration des Objets et variables Dim MonApply As Outlook.Application Dim Expl As Explorer Dim myNameSpace As NameSpace Dim myFolder As MAPIFolder Dim myItems As Items Dim xi As Integer
'Instance des Objets Set MonApply = Outlook.Application 'Application Outlook
'Expl nous donne le dossier courant Set Expl = ActiveExplorer 'Permet d'accéder à toutes les données Outlook qui y sont stockées Set myNameSpace = MonApply.GetNamespace("MAPI")
'On recupère l'ID du dossier courant puis on se positionne dans ce dossier 'pour recupérer tous les messages Set myFolder = myNameSpace.GetFolderFromID(Expl.CurrentFolder.EntryID)
'La variable myItems prendra comme valeur 'tous les messages du dossier courant
Set myItems = myFolder.Items
For xi = 1 To myItems.Count myItems.Item(xi).Categories = myFolder.Name
Next xi
End
mais comme l'explique son auteur, ça ne fonctionne que pour l'email sélectionné lors du lancement de la macro. comment faire pour que tout le répertoire soit sélectionné ? Si quelqu'un a une piste, je suis preneur. Bonne journée à tous.
Geo
Bonjour
mais comme l'explique son auteur, ça ne fonctionne que pour l'email sélectionné lors du lancement de la macro.
Ça me parait contradictoire avec le code et le commentaire dans le code. Pourquoi ne pas demander à l'auteur lui-même ?
La réponse de Medhi a l'avantage de ne pas nécessiter de macro.
-- A+
Bonjour
mais comme l'explique son auteur, ça ne fonctionne que pour l'email sélectionné lors du
lancement de la macro.
Ça me parait contradictoire avec le code et le commentaire dans le
code.
Pourquoi ne pas demander à l'auteur lui-même ?
La réponse de Medhi a l'avantage de ne pas nécessiter de macro.