Je recois des messages provenant des different bureaux de notre entreprise.
J'aimerais me cree une regle qui pourrais deplacer les message recu vers un
PST determiner par bureau(ca c'est ok) Mais en plus, j'aimerais que sous
chaque dossier bureau, pouvoir separer les usagers en utilisant leur
%username%. Comme ca j'aurais un dossier par employé deplacer
automatiquement.
Bonjour ! C'est super ! En fait le message apparaît si la version de Outlook est 2003, il est plus "pointilleux" au niveau sécurité que ses prédécesseurs ! A+ Isa
"" a écrit dans le message de news:
Bonjour Isabelle! ! ! !
Je suis content la, nous avons reussi a tous faire ce que tu as dit et je n'ai pas de pprbleme avec "Un programme
essaie d'accéder..."
Reste juste a paufiner mes groupes car dans montreal j'ai 4 sous groupe.
un gros merci je te dis A+!
"Isabelle Prawitz" wrote:
Bon, ça y est, j'ai fait une moulinette, mais elle a l'inconvénient, avec Outlook 2003, de mettre le message "Un programme
essaie d'accéder..."
La voici, à coller dans le code de session Outlook, puis référence à la bibliothèque "Microsoft CDO 1.21 Library", et enfin
appel de la macro dans Application_NewMail si tu veux qu'elle s'active dès qu'un message arrive (pas obligatoire).
'début macro Sub VentileMail() Dim cdoMaSession As MAPI.Session Dim LAdresse As MAPI.AddressEntry Dim cdoMess As MAPI.Message Dim LeMess As MailItem Dim olaListe As Outlook.AddressEntry Dim oLAdresse As Outlook.AddressEntry Dim LeDoss As MAPIFolder Dim DossUser As MAPIFolder Dim LItem As Object Dim LeNouvDoss As MAPIFolder Dim oLesbureaux As Outlook.AddressEntry
Set cdoMaSession = CreateObject("MAPI.Session") cdoMaSession.Logon "", "", False, False, 0
Set oLesbureaux = Session.AddressLists("Contacts").AddressEntries("Bureaux") Set LeDoss = Session.GetDefaultFolder(olFolderInbox) For Each LItem In LeDoss.Items If TypeName(LItem) = "MailItem" Then Set LeMess = LItem Dim blnDeplace As Boolean Set cdoMess = cdoMaSession.GetMessage(LeMess.EntryID) For Each olaListe In oLesbureaux.Members For Each oLAdresse In olaListe.Members Set LAdresse = cdoMaSession.GetAddressEntry(oLAdresse.ID) If LAdresse.IsSameAs(cdoMess.Sender) Then Set LeNouvDoss = Session.Folders(olaListe.Name).Folders("Employee") On Error Resume Next Dim strAlias As String strAlias = LAdresse.Fields(&H3A00001E).Value If LeNouvDoss.Folders(strAlias) Is Nothing Then LeNouvDoss.Folders.Add strAlias End If On Error GoTo 0 Set DossUser = LeNouvDoss.Folders(strAlias) LeMess.Move DossUser blnDeplace = True Exit For End If Next If blnDeplace Then Exit For Next End If Next MsgBox "Fini" 'à enlever, pour test End Sub 'fin macro
En espérant que ça marche du premier coup... ;-) A+ Isa
"" a écrit dans le message de news:
Pas de probleme je veux juste etre certain d'etre avise quand tu me fera un reply!
"Isabelle Prawitz" wrote:
Attends, attends ! Je teste ma moulinette ! Isa
"" a écrit dans le message de news:
Ok c'Est fait. Ensuite?
"Isabelle Prawitz" wrote:
Bonjour ! Alors je te propose une petite manipulation avant toute chose : créer une liste de distribution Outlook qui contiendra
les
listes associées aux bureaux, de façon à les trouver facilement et à restreindre le traitement. Tu pourrais l'appeler
Bureaux, par exemple. C'est ce que je prendrai comme base. Isa
"" a écrit dans le message de news:
Bonjour Isabelle
Desole pour le delai!
1- Mes liste sont formé par des custom attribute directement sur le serveur exchange. Quand je vais dans le carnet d'Adresse, sous all group je vois chaque bureau.
2- Oui ils ont les meme noms que les attibut. (par hasard).
Juste pour etre certain, chaque bureau a 1 pst au nom du bureau (ie: Montreal) avec un sous-dossier employee.(ie: montreal/employee) J'aimerais pour avoir un dossier par employe (ie: montreal/employee/%username%) j'aimerais pouvoir modifier la regle pour que je puisse avoir la meme chose pour les 2 autres bureaux.
Merci!
p.s. j'avais oublier de cocher la case notify me of replies!
"Isabelle Prawitz" wrote:
Bonjour à nouveau ! Pour te pondre une trame, j'aurais besoin de quelques indications supplémentaires: 1. Comment sont formatées les listes correspondant aux bureaux ? S'il n'y a pas de format spécifique, il faut envisager
de
faire une liste de distrib Outlook contenant ces fameuses listes (le plus simple à gérer à mon avis !) 2. Tes sous-dossiers de bureaux ont-ils exactement le même nom que les listes ? A+ Isa
"" a écrit dans le message de news:
Merci à l'avance, Ca me rendrai un bon coup de main!
"Isabelle Prawitz" wrote:
Donc tu as plusieurs listes de distrib Exchange, une par bureau ? Si c'est le cas en effet, tu peux faire un traitement à l'arrivée de chaque mail avec : 1. Récup de l'alias de l'expéditeur 2. Récup de la liste de distrib, et donc de son bureau 3. Vérif dans le dossier pst LebureauXEmployer, si le dossier UserY existe déjà et : a. si oui, déplacement du message b. si non, création du dossier et déplacement du message Ca me paraît tout à fait jouable ! ;-) Je jetterai un oeil demain ! A+ Isa
Bonjour B@stien !
C'est super !
En fait le message apparaît si la version de Outlook est 2003, il est plus "pointilleux" au niveau sécurité que ses
prédécesseurs !
A+
Isa
"B@stien" <Bstien@discussions.microsoft.com> a écrit dans le message de
news:B0D4025B-6482-4C0E-9CC9-8BD70F9C8CBF@microsoft.com...
Bonjour Isabelle! ! ! !
Je suis content la, nous avons reussi a tous faire ce que tu as dit et je
n'ai pas de pprbleme avec "Un programme
essaie d'accéder..."
Reste juste a paufiner mes groupes car dans montreal j'ai 4 sous groupe.
un gros merci je te dis A+!
"Isabelle Prawitz" wrote:
Bon, ça y est, j'ai fait une moulinette, mais elle a l'inconvénient, avec Outlook 2003, de mettre le message "Un
programme
essaie d'accéder..."
La voici, à coller dans le code de session Outlook, puis référence à la bibliothèque "Microsoft CDO 1.21 Library", et
enfin
appel de la macro dans Application_NewMail si tu veux qu'elle s'active dès qu'un message arrive (pas obligatoire).
'début macro
Sub VentileMail()
Dim cdoMaSession As MAPI.Session
Dim LAdresse As MAPI.AddressEntry
Dim cdoMess As MAPI.Message
Dim LeMess As MailItem
Dim olaListe As Outlook.AddressEntry
Dim oLAdresse As Outlook.AddressEntry
Dim LeDoss As MAPIFolder
Dim DossUser As MAPIFolder
Dim LItem As Object
Dim LeNouvDoss As MAPIFolder
Dim oLesbureaux As Outlook.AddressEntry
Set cdoMaSession = CreateObject("MAPI.Session")
cdoMaSession.Logon "", "", False, False, 0
Set oLesbureaux = Session.AddressLists("Contacts").AddressEntries("Bureaux")
Set LeDoss = Session.GetDefaultFolder(olFolderInbox)
For Each LItem In LeDoss.Items
If TypeName(LItem) = "MailItem" Then
Set LeMess = LItem
Dim blnDeplace As Boolean
Set cdoMess = cdoMaSession.GetMessage(LeMess.EntryID)
For Each olaListe In oLesbureaux.Members
For Each oLAdresse In olaListe.Members
Set LAdresse = cdoMaSession.GetAddressEntry(oLAdresse.ID)
If LAdresse.IsSameAs(cdoMess.Sender) Then
Set LeNouvDoss = Session.Folders(olaListe.Name).Folders("Employee")
On Error Resume Next
Dim strAlias As String
strAlias = LAdresse.Fields(&H3A00001E).Value
If LeNouvDoss.Folders(strAlias) Is Nothing Then
LeNouvDoss.Folders.Add strAlias
End If
On Error GoTo 0
Set DossUser = LeNouvDoss.Folders(strAlias)
LeMess.Move DossUser
blnDeplace = True
Exit For
End If
Next
If blnDeplace Then Exit For
Next
End If
Next
MsgBox "Fini" 'à enlever, pour test
End Sub
'fin macro
En espérant que ça marche du premier coup... ;-)
A+
Isa
"B@stien" <Bstien@discussions.microsoft.com> a écrit dans le message de
news:3270FCF8-4768-41C5-9B1D-885FAE9CC9F2@microsoft.com...
Pas de probleme je veux juste etre certain d'etre avise quand tu me fera un
reply!
"Isabelle Prawitz" wrote:
Attends, attends !
Je teste ma moulinette !
Isa
"B@stien" <Bstien@discussions.microsoft.com> a écrit dans le message de
news:B19937F5-E580-483A-8558-3A1F99F71C77@microsoft.com...
Ok c'Est fait. Ensuite?
"Isabelle Prawitz" wrote:
Bonjour !
Alors je te propose une petite manipulation avant toute chose : créer une liste de distribution Outlook qui
contiendra
les
listes associées aux bureaux, de façon à les trouver facilement et à restreindre le traitement. Tu pourrais
l'appeler
Bureaux, par exemple. C'est ce que je prendrai comme base.
Isa
"B@stien" <Bstien@discussions.microsoft.com> a écrit dans le message de
news:0B5D2169-2B05-412E-AEAC-1F093ED73E65@microsoft.com...
Bonjour Isabelle
Desole pour le delai!
1- Mes liste sont formé par des custom attribute directement sur le serveur
exchange. Quand je vais dans le carnet d'Adresse, sous all group je vois
chaque bureau.
2- Oui ils ont les meme noms que les attibut. (par hasard).
Juste pour etre certain, chaque bureau a 1 pst au nom du bureau (ie:
Montreal) avec un sous-dossier employee.(ie: montreal/employee) J'aimerais
pour avoir un dossier par employe (ie: montreal/employee/%username%)
j'aimerais pouvoir modifier la regle pour que je puisse avoir la meme chose
pour les 2 autres bureaux.
Merci!
p.s. j'avais oublier de cocher la case notify me of replies!
"Isabelle Prawitz" wrote:
Bonjour à nouveau !
Pour te pondre une trame, j'aurais besoin de quelques indications supplémentaires:
1. Comment sont formatées les listes correspondant aux bureaux ? S'il n'y a pas de format spécifique, il faut
envisager
de
faire une liste de distrib Outlook contenant ces fameuses listes (le plus simple à gérer à mon avis !)
2. Tes sous-dossiers de bureaux ont-ils exactement le même nom que les listes ?
A+
Isa
"B@stien" <Bstien@discussions.microsoft.com> a écrit dans le message de
news:E2CB68A2-BEF6-4330-BEFC-507854D420F5@microsoft.com...
Merci à l'avance, Ca me rendrai un bon coup de main!
"Isabelle Prawitz" wrote:
Donc tu as plusieurs listes de distrib Exchange, une par bureau ?
Si c'est le cas en effet, tu peux faire un traitement à l'arrivée de chaque mail avec :
1. Récup de l'alias de l'expéditeur
2. Récup de la liste de distrib, et donc de son bureau
3. Vérif dans le dossier pst LebureauXEmployer, si le dossier UserY existe déjà et :
a. si oui, déplacement du message
b. si non, création du dossier et déplacement du message
Ca me paraît tout à fait jouable ! ;-)
Je jetterai un oeil demain !
A+
Isa
Bonjour ! C'est super ! En fait le message apparaît si la version de Outlook est 2003, il est plus "pointilleux" au niveau sécurité que ses prédécesseurs ! A+ Isa
"" a écrit dans le message de news:
Bonjour Isabelle! ! ! !
Je suis content la, nous avons reussi a tous faire ce que tu as dit et je n'ai pas de pprbleme avec "Un programme
essaie d'accéder..."
Reste juste a paufiner mes groupes car dans montreal j'ai 4 sous groupe.
un gros merci je te dis A+!
"Isabelle Prawitz" wrote:
Bon, ça y est, j'ai fait une moulinette, mais elle a l'inconvénient, avec Outlook 2003, de mettre le message "Un programme
essaie d'accéder..."
La voici, à coller dans le code de session Outlook, puis référence à la bibliothèque "Microsoft CDO 1.21 Library", et enfin
appel de la macro dans Application_NewMail si tu veux qu'elle s'active dès qu'un message arrive (pas obligatoire).
'début macro Sub VentileMail() Dim cdoMaSession As MAPI.Session Dim LAdresse As MAPI.AddressEntry Dim cdoMess As MAPI.Message Dim LeMess As MailItem Dim olaListe As Outlook.AddressEntry Dim oLAdresse As Outlook.AddressEntry Dim LeDoss As MAPIFolder Dim DossUser As MAPIFolder Dim LItem As Object Dim LeNouvDoss As MAPIFolder Dim oLesbureaux As Outlook.AddressEntry
Set cdoMaSession = CreateObject("MAPI.Session") cdoMaSession.Logon "", "", False, False, 0
Set oLesbureaux = Session.AddressLists("Contacts").AddressEntries("Bureaux") Set LeDoss = Session.GetDefaultFolder(olFolderInbox) For Each LItem In LeDoss.Items If TypeName(LItem) = "MailItem" Then Set LeMess = LItem Dim blnDeplace As Boolean Set cdoMess = cdoMaSession.GetMessage(LeMess.EntryID) For Each olaListe In oLesbureaux.Members For Each oLAdresse In olaListe.Members Set LAdresse = cdoMaSession.GetAddressEntry(oLAdresse.ID) If LAdresse.IsSameAs(cdoMess.Sender) Then Set LeNouvDoss = Session.Folders(olaListe.Name).Folders("Employee") On Error Resume Next Dim strAlias As String strAlias = LAdresse.Fields(&H3A00001E).Value If LeNouvDoss.Folders(strAlias) Is Nothing Then LeNouvDoss.Folders.Add strAlias End If On Error GoTo 0 Set DossUser = LeNouvDoss.Folders(strAlias) LeMess.Move DossUser blnDeplace = True Exit For End If Next If blnDeplace Then Exit For Next End If Next MsgBox "Fini" 'à enlever, pour test End Sub 'fin macro
En espérant que ça marche du premier coup... ;-) A+ Isa
"" a écrit dans le message de news:
Pas de probleme je veux juste etre certain d'etre avise quand tu me fera un reply!
"Isabelle Prawitz" wrote:
Attends, attends ! Je teste ma moulinette ! Isa
"" a écrit dans le message de news:
Ok c'Est fait. Ensuite?
"Isabelle Prawitz" wrote:
Bonjour ! Alors je te propose une petite manipulation avant toute chose : créer une liste de distribution Outlook qui contiendra
les
listes associées aux bureaux, de façon à les trouver facilement et à restreindre le traitement. Tu pourrais l'appeler
Bureaux, par exemple. C'est ce que je prendrai comme base. Isa
"" a écrit dans le message de news:
Bonjour Isabelle
Desole pour le delai!
1- Mes liste sont formé par des custom attribute directement sur le serveur exchange. Quand je vais dans le carnet d'Adresse, sous all group je vois chaque bureau.
2- Oui ils ont les meme noms que les attibut. (par hasard).
Juste pour etre certain, chaque bureau a 1 pst au nom du bureau (ie: Montreal) avec un sous-dossier employee.(ie: montreal/employee) J'aimerais pour avoir un dossier par employe (ie: montreal/employee/%username%) j'aimerais pouvoir modifier la regle pour que je puisse avoir la meme chose pour les 2 autres bureaux.
Merci!
p.s. j'avais oublier de cocher la case notify me of replies!
"Isabelle Prawitz" wrote:
Bonjour à nouveau ! Pour te pondre une trame, j'aurais besoin de quelques indications supplémentaires: 1. Comment sont formatées les listes correspondant aux bureaux ? S'il n'y a pas de format spécifique, il faut envisager
de
faire une liste de distrib Outlook contenant ces fameuses listes (le plus simple à gérer à mon avis !) 2. Tes sous-dossiers de bureaux ont-ils exactement le même nom que les listes ? A+ Isa
"" a écrit dans le message de news:
Merci à l'avance, Ca me rendrai un bon coup de main!
"Isabelle Prawitz" wrote:
Donc tu as plusieurs listes de distrib Exchange, une par bureau ? Si c'est le cas en effet, tu peux faire un traitement à l'arrivée de chaque mail avec : 1. Récup de l'alias de l'expéditeur 2. Récup de la liste de distrib, et donc de son bureau 3. Vérif dans le dossier pst LebureauXEmployer, si le dossier UserY existe déjà et : a. si oui, déplacement du message b. si non, création du dossier et déplacement du message Ca me paraît tout à fait jouable ! ;-) Je jetterai un oeil demain ! A+ Isa