Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Ouvrir un message outlook avec excel

23 réponses
Avatar
Richard
Bonjour

je souhaite faire un lien vers des messages outlook office 2003
je fais un copier coller du libellé des messages outlook dans des cellules
d' excel

Comment transformer ce libellé en lien vers outlook pour ouvrir le message
outlook directement à partir d'excel

Principe identique à un lien vers un fichier word

Attention ce message se trouve dans un répertoire perso pas dans les
messages reçus

3 réponses

1 2 3
Avatar
Richard
j'ai déposé le ficfier sur le site voici le lien
vhttp://www.cijoint.fr/cjlink.php?file=cj200903/cijlNNuBgP.xls

pour lancé le programme je dois lancer l'exection de le module VBA
le double click ne donne rien sur la cellule Excel

"Daniel.C" a écrit :

Bonjour.
Ca fonctionne chez moi. Il y a soit une différence d'environnement,
soit un dysfonctionnement lié au fait que tu utilises XL2003. Peux-tu
exécuter la macro suivante et poster le classeur résultat - ou
seulement la première feuille sur www.cijoint.fr ? Poste ensuite ici
l'adresse générée.

Sub test1()
Dim OlApp As Object, NS As Object, Dossier As Object
Dim OlExp As Object
Dim i As Object, j As Integer, k As Integer
Cancel = True
Set OlApp = CreateObject("OutLook.Application")
Set NS = OlApp.GetNamespace("MAPI")
Sheets.Add before:=Sheets(1)
For j = 1 To NS.Folders.Count
ligne = ligne + 1
Cells(ligne, 1) = NS.Folders(j).Name
For k = 1 To NS.Folders(j).Folders.Count
ligne = ligne + 1
Cells(ligne, 2) = NS.Folders(j).Folders(k).Name
Set Dossier = NS.Folders(j).Folders(k)
Next k
Next j
End Sub

Daniel

> J'ai fait mon double click sur un libellé à la fin de l'execution rien ne se
> passe
> Voici les valeurs que j'ai en cours d'execution
> Si cela peux vous aider
>
> Set OlApp = CreateObject("OutLook.Application") = "outlook"
> Set fs = CreateObject("Scripting.FileSystemObject") = pas de
> valeur Set OlExp = OlApp.ActiveExplorer
> ="nothing
> Set NS = OlApp.GetNamespace("MAPI") ="MAPI
> For j = 1 To NS.Folders.Count
> = "1"
> Set f = NS.Folders(j)
> = "nom d'un répertoire de de outlook"
> For k = 1 To NS.Folders(j).Folders.Count = "2"
> Set Dossier = NS.Folders(j).Folders(k) =
> "nom d'un dossier"
> For Each i In Dossier.Items =
> ""
> If i.Subject
> = Target.Value Then
> i.display
> End If
> Next i
> Next k
> Next j
> End Sub
>
> "Daniel.C" a écrit :
>
>> Bonjour.
>> Ca change un peu la donne :
>> 1. on ne connait ni le fichier pst, ni le dossier dans lequel se trouve
>> le message (implicitement, il n'y a pas de doublons).
>> 2. le fichier pst est déjà ouvert dans Outlook (C'est à dire qu'il
>> figure dans la liste "Fichier", "Gestion de fichiers de données".
>> Dans cette cofiguration, le code suivant doit faire l'affaire, sauf si
>> une instruction est particulière à XL2007 :
>>
>> Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
>> As Boolean)
>> Dim OlApp As Object, NS As Object, Dossier As Object
>> Dim OlExp As Object
>> Dim i As Object, j As Integer, k As Integer
>> Cancel = True
>> Set OlApp = CreateObject("OutLook.Application")
>> Set fs = CreateObject("Scripting.FileSystemObject")
>> Set OlExp = OlApp.ActiveExplorer
>> Set NS = OlApp.GetNamespace("MAPI")
>> For j = 1 To NS.Folders.Count
>> Set f = NS.Folders(j)
>> For k = 1 To NS.Folders(j).Folders.Count
>> Set Dossier = NS.Folders(j).Folders(k)
>> For Each i In Dossier.Items
>> If i.Subject = Target.Value Then
>> i.display
>> End If
>> Next i
>> Next k
>> Next j
>> End Sub
>>
>> Daniel
>>
>>> pour répondre ta question:
>>> oui ma messagerie est ouverte j'ai donc accé à mes répertoires et à mes
>>> messages.
>>> j'ai encore un plantage
>>> A chaque test je ferme mon fichier excel pour bien repartir sur un
>>> programme propre
>>> Je pense que de base je dois bien click colonne A
>>>
>>> Que la messagerie soit ouverte ou fermé j'ai les résultats suivants
>>> j'ai fait les tests suivants messagerie ouverte et fermé
>>>
>>> Si je double click sur un libellé de la colonne A j'ai un plantage à la
>>> ligne Set Dossier = NS.Folders(NS.Folders.Count).Folders("test")
>>> Le terme "test" me surprend est il toujours d'actualité
>>>
>>> Si je double click sur un libellé de la colonne B j'ai un plantage à la
>>> ligne NS.AddStore Target.Offset(, 1).Value
>>>
>>>
>>>
>>>
>>> "Daniel.C" a écrit :
>>>
>>>> La macro fournie pré-suppose que les fichiers pst ne sont pas chargés
>>>> dans Outlook. Si ce n'est pas le cas, dis-le.
>>>> Daniel
>>>>
>>>>> je n'ai pas bien compris le:
>>>>> " En supposant que le dossier et le fichier pst soit en colonne B"
>>>>>
>>>>> je pense que cela vient de m'on explication donc je reprends:
>>>>> Sur mon disque D:
>>>>> J'ai des dossiers :(sens dossier Explorateur)
>>>>> Dossier 1
>>>>> Dossier 2
>>>>> Dans ces dosssiers j'ai des fichiers xxx.pst
>>>>> Dossier 1: fichier a. pst, fichier b. pst, etc
>>>>> Dossier 2: fichier a. pst, fichier b. pst, etc
>>>>>
>>>>> Dans ces fichiers xx. pst j'ai aussi des dossiers (sens dossier outlook)
>>>>> Fichier 1.pst dossier aa, dossier bb, etc
>>>>>
>>>>> je vais donc copier sur ma feuille le libellé d'un message qui vient de:
>>>>> Dossier 1 > fichier a. pst > dossier aa message 1
>>>>> Dossier 2 > fichier b. pst > dossier bb message 2
>>>>>
>>>>> Voici ci dessous des exemples pour j'espére étre plus claire
>>>>>
>>>>> j'ai relancé votre ancien code ce matin et j'ai de nouveau une erreur???
>>>>> Le programme plant ligne " NS.AddStore Target.Offset(, 1).Value"
>>>>>
>>>>> je suis un peux perdu
>>>>>
>>>>> "Daniel.C" a écrit :
>>>>>
>>>>>> Oups.
>>>>>> Lire :
>>>>>> En supposant que le dossier et le fichier pst soit en colonne B
>>>>>> au lieu de :
>>>>>> En supposant que le dossier du fichier pst soit en colonne B
>>>>>> Daniel
>>>>>>> En supposant que le dossier du fichier pst soit en colonne B :
>>>>>>>
>>>>>>> Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
>>>>>>> As Boolean)
>>>>>>> Dim OlApp As Object, NS As Object, Dossier As Object
>>>>>>> Dim OlExp As Object
>>>>>>> Dim i As Object
>>>>>>> Cancel = True
>>>>>>> Set OlApp = CreateObject("OutLook.Application")
>>>>>>> Set fs = CreateObject("Scripting.FileSystemObject")
>>>>>>> Set OlExp = OlApp.ActiveExplorer
>>>>>>> Set NS = OlApp.GetNamespace("MAPI")
>>>>>>> NS.AddStore Target.Offset(, 1).Value
>>>>>>> Set objFolder = NS.Folders.Item(NS.Folders.Count)
>>>>>>> Set Dossier = NS.Folders(NS.Folders.Count).Folders("test")
>>>>>>> For Each i In Dossier.Items
>>>>>>> If i.Subject = Target.Value Then
>>>>>>> i.display
>>>>>>> End If
>>>>>>> Next i
>>>>>>> NS.RemoveStore objFolder
>>>>>>> End Sub
>>>>>>>
>>>>>>> Fais bien une sauvegarde de ton fichier pst courant avant de tester.
>>>>>>> Daniel
>>>>>>>
>>>>>>>> je confirme cela fonctionne dans le répertoire test
>>>>>>>> Par contre le besoin final est le suivant
>>>>>>>>
>>>>>>>> J'ai sur mon disque D plusieurs fichiers PST avec plusieurs
>>>>>>>> Répertoires
>>>>>>>>
>>>>>>>> d:/ Dossier 1.pst
>>>>>>>> Rep 1 Rep 2
>>>>>>>> Dossier 2.pst
>>>>>>>> Rep 1
>>>>>>>> Rep 2
>>>>>>>>
>>>>>>>> le besoin est de pouvoir ouvrir n'importe quel mail dans n'importe
>>>>>>>> lequel des répertoires
>>>>>>>>
>>>>>>>> j'espere qu'une solution est possible.
>>>>>>>>
>>>>>>>> "" a écrit :
>>>>>>>>
>>>>>>>>> Bonjour Daniel,
>>>>>>>>>
>>>>>>>>> Oui, qd Richard disait ne pas y arriver,
>>>>>>>>> ....j'avais pensé à cela.
>>>>>>>>> Même en session, il faudrait être autorisé via une fenêtre TSE ou
>>>>>>>>> autre
>>>>>>>>> pour être sur le serveur depuis le poste et pouvoir accèder ce
>>>>>>>>> répertoire.
>>>>>>>>> Ce que peu d'administrateurs réseau accepteraient , il me semble...
>>>>>>>>> Enfin puisqu'il n'est pas dans ce cas et que d'après son dernier post
>>>>>>>>> ça roule.
>>>>>>>>>
>>>>>>>>> @+
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> lSteph
>>>>>>>>>
>>>>>>>>> On 12 mar, 16:08, Daniel.C wrote:
>>>>>>>>>>> le .pst ou la boite .. si elle est sur le serveur et que seul
>>>>>>>>>>> l'administrateur réseau à cet accès!?
>>>>>>>>>>
>>>>>>>>>> Je n'ai jamais travaillé avec Exchange, J'imagine que, effectivement
>>>>>>>>>> tu n'y as pas accès jusquà ce que tu ouvres une session ?
>>>>>>>>>> Daniel
>>>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>>
>>
>>
>>





Avatar
Daniel.C
J'ai modifié ton classeur. Mets le titre d'un message en A1 et
double-clique dessus. Si tu as beaucoup de messages, la macro va être
assez longue à répondre à afficher le mail. Attend l'affichage.
http://www.cijoint.fr/cjlink.php?file=cj200903/cijLRh1u92.xls
Daniel

j'ai déposé le ficfier sur le site voici le lien
vhttp://www.cijoint.fr/cjlink.php?file=cj200903/cijlNNuBgP.xls

pour lancé le programme je dois lancer l'exection de le module VBA
le double click ne donne rien sur la cellule Excel

"Daniel.C" a écrit :

Bonjour.
Ca fonctionne chez moi. Il y a soit une différence d'environnement,
soit un dysfonctionnement lié au fait que tu utilises XL2003. Peux-tu
exécuter la macro suivante et poster le classeur résultat - ou
seulement la première feuille sur www.cijoint.fr ? Poste ensuite ici
l'adresse générée.

Sub test1()
Dim OlApp As Object, NS As Object, Dossier As Object
Dim OlExp As Object
Dim i As Object, j As Integer, k As Integer
Cancel = True
Set OlApp = CreateObject("OutLook.Application")
Set NS = OlApp.GetNamespace("MAPI")
Sheets.Add before:=Sheets(1)
For j = 1 To NS.Folders.Count
ligne = ligne + 1
Cells(ligne, 1) = NS.Folders(j).Name
For k = 1 To NS.Folders(j).Folders.Count
ligne = ligne + 1
Cells(ligne, 2) = NS.Folders(j).Folders(k).Name
Set Dossier = NS.Folders(j).Folders(k)
Next k
Next j
End Sub

Daniel

J'ai fait mon double click sur un libellé à la fin de l'execution rien ne
se passe
Voici les valeurs que j'ai en cours d'execution
Si cela peux vous aider

Set OlApp = CreateObject("OutLook.Application") = "outlook"
Set fs = CreateObject("Scripting.FileSystemObject") = pas de
valeur Set OlExp = OlApp.ActiveExplorer
="nothing
Set NS = OlApp.GetNamespace("MAPI") ="MAPI
For j = 1 To NS.Folders.Count
= "1"
Set f = NS.Folders(j)
= "nom d'un répertoire de de outlook"
For k = 1 To NS.Folders(j).Folders.Count =
"2" Set Dossier = NS.Folders(j).Folders(k)
= "nom d'un dossier"
For Each i In Dossier.Items
= ""
If i.Subject
= Target.Value Then
i.display
End If
Next i
Next k
Next j
End Sub

"Daniel.C" a écrit :

Bonjour.
Ca change un peu la donne :
1. on ne connait ni le fichier pst, ni le dossier dans lequel se trouve
le message (implicitement, il n'y a pas de doublons).
2. le fichier pst est déjà ouvert dans Outlook (C'est à dire qu'il
figure dans la liste "Fichier", "Gestion de fichiers de données".
Dans cette cofiguration, le code suivant doit faire l'affaire, sauf si
une instruction est particulière à XL2007 :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
As Boolean)
Dim OlApp As Object, NS As Object, Dossier As Object
Dim OlExp As Object
Dim i As Object, j As Integer, k As Integer
Cancel = True
Set OlApp = CreateObject("OutLook.Application")
Set fs = CreateObject("Scripting.FileSystemObject")
Set OlExp = OlApp.ActiveExplorer
Set NS = OlApp.GetNamespace("MAPI")
For j = 1 To NS.Folders.Count
Set f = NS.Folders(j)
For k = 1 To NS.Folders(j).Folders.Count
Set Dossier = NS.Folders(j).Folders(k)
For Each i In Dossier.Items
If i.Subject = Target.Value Then
i.display
End If
Next i
Next k
Next j
End Sub

Daniel

pour répondre ta question:
oui ma messagerie est ouverte j'ai donc accé à mes répertoires et à
mes messages.
j'ai encore un plantage
A chaque test je ferme mon fichier excel pour bien repartir sur un
programme propre
Je pense que de base je dois bien click colonne A

Que la messagerie soit ouverte ou fermé j'ai les résultats suivants
j'ai fait les tests suivants messagerie ouverte et fermé

Si je double click sur un libellé de la colonne A j'ai un plantage à la
ligne Set Dossier = NS.Folders(NS.Folders.Count).Folders("test")
Le terme "test" me surprend est il toujours d'actualité

Si je double click sur un libellé de la colonne B j'ai un plantage à la
ligne NS.AddStore Target.Offset(, 1).Value




"Daniel.C" a écrit :

La macro fournie pré-suppose que les fichiers pst ne sont pas chargés
dans Outlook. Si ce n'est pas le cas, dis-le.
Daniel

je n'ai pas bien compris le:
" En supposant que le dossier et le fichier pst soit en colonne B"

je pense que cela vient de m'on explication donc je reprends:
Sur mon disque D:
J'ai des dossiers :(sens dossier Explorateur)
Dossier 1
Dossier 2
Dans ces dosssiers j'ai des fichiers xxx.pst
Dossier 1: fichier a. pst, fichier b. pst, etc
Dossier 2: fichier a. pst, fichier b. pst, etc

Dans ces fichiers xx. pst j'ai aussi des dossiers (sens dossier
outlook) Fichier 1.pst dossier aa, dossier bb, etc

je vais donc copier sur ma feuille le libellé d'un message qui vient
de: Dossier 1 > fichier a. pst > dossier aa message 1
Dossier 2 > fichier b. pst > dossier bb message 2

Voici ci dessous des exemples pour j'espére étre plus claire

j'ai relancé votre ancien code ce matin et j'ai de nouveau une
erreur??? Le programme plant ligne " NS.AddStore Target.Offset(,
1).Value"

je suis un peux perdu

"Daniel.C" a écrit :

Oups.
Lire :
En supposant que le dossier et le fichier pst soit en colonne B
au lieu de :
En supposant que le dossier du fichier pst soit en colonne B
Daniel
En supposant que le dossier du fichier pst soit en colonne B :

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
As Boolean)
Dim OlApp As Object, NS As Object, Dossier As Object
Dim OlExp As Object
Dim i As Object
Cancel = True
Set OlApp = CreateObject("OutLook.Application")
Set fs = CreateObject("Scripting.FileSystemObject")
Set OlExp = OlApp.ActiveExplorer
Set NS = OlApp.GetNamespace("MAPI")
NS.AddStore Target.Offset(, 1).Value
Set objFolder = NS.Folders.Item(NS.Folders.Count)
Set Dossier = NS.Folders(NS.Folders.Count).Folders("test")
For Each i In Dossier.Items
If i.Subject = Target.Value Then
i.display
End If
Next i
NS.RemoveStore objFolder
End Sub

Fais bien une sauvegarde de ton fichier pst courant avant de tester.
Daniel

je confirme cela fonctionne dans le répertoire test
Par contre le besoin final est le suivant

J'ai sur mon disque D plusieurs fichiers PST avec plusieurs
Répertoires

d:/ Dossier 1.pst
Rep 1 Rep 2
Dossier 2.pst
Rep 1
Rep 2

le besoin est de pouvoir ouvrir n'importe quel mail dans n'importe
lequel des répertoires

j'espere qu'une solution est possible.

"" a écrit :

Bonjour Daniel,

Oui, qd Richard disait ne pas y arriver,
....j'avais pensé à cela.
Même en session, il faudrait être autorisé via une fenêtre TSE ou
autre
pour être sur le serveur depuis le poste et pouvoir accèder ce
répertoire.
Ce que peu d'administrateurs réseau accepteraient , il me semble...
Enfin puisqu'il n'est pas dans ce cas et que d'après son dernier
post ça roule.

@+

--
lSteph

On 12 mar, 16:08, Daniel.C wrote:
le .pst ou la boite .. si elle est sur le serveur et que seul
l'administrateur réseau à cet accès!?



Je n'ai jamais travaillé avec Exchange, J'imagine que,
effectivement tu n'y as pas accès jusquà ce que tu ouvres une
session ? Daniel





































Avatar
Richard
Merci maintenant cela tourne tres bien

Rappel du code

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As
Boolean)
Dim OlApp As Object, NS As Object, Dossier As Object
Dim OlExp As Object
Dim i As Object, j As Integer, k As Integer
Cancel = True
Set OlApp = CreateObject("OutLook.Application")
Set fs = CreateObject("Scripting.FileSystemObject")
Set OlExp = OlApp.ActiveExplorer
Set NS = OlApp.GetNamespace("MAPI")
For j = 1 To NS.Folders.Count
Set f = NS.Folders(j)
For k = 1 To NS.Folders(j).Folders.Count
Set Dossier = NS.Folders(j).Folders(k)
For Each i In Dossier.Items
If i.Subject = Target.Value Then
i.display
End If
Next i
Next k
Next j
End Sub


"Daniel.C" a écrit :

J'ai modifié ton classeur. Mets le titre d'un message en A1 et
double-clique dessus. Si tu as beaucoup de messages, la macro va être
assez longue à répondre à afficher le mail. Attend l'affichage.
http://www.cijoint.fr/cjlink.php?file=cj200903/cijLRh1u92.xls
Daniel

> j'ai déposé le ficfier sur le site voici le lien
> vhttp://www.cijoint.fr/cjlink.php?file=cj200903/cijlNNuBgP.xls
>
> pour lancé le programme je dois lancer l'exection de le module VBA
> le double click ne donne rien sur la cellule Excel
>
> "Daniel.C" a écrit :
>
>> Bonjour.
>> Ca fonctionne chez moi. Il y a soit une différence d'environnement,
>> soit un dysfonctionnement lié au fait que tu utilises XL2003. Peux-tu
>> exécuter la macro suivante et poster le classeur résultat - ou
>> seulement la première feuille sur www.cijoint.fr ? Poste ensuite ici
>> l'adresse générée.
>>
>> Sub test1()
>> Dim OlApp As Object, NS As Object, Dossier As Object
>> Dim OlExp As Object
>> Dim i As Object, j As Integer, k As Integer
>> Cancel = True
>> Set OlApp = CreateObject("OutLook.Application")
>> Set NS = OlApp.GetNamespace("MAPI")
>> Sheets.Add before:=Sheets(1)
>> For j = 1 To NS.Folders.Count
>> ligne = ligne + 1
>> Cells(ligne, 1) = NS.Folders(j).Name
>> For k = 1 To NS.Folders(j).Folders.Count
>> ligne = ligne + 1
>> Cells(ligne, 2) = NS.Folders(j).Folders(k).Name
>> Set Dossier = NS.Folders(j).Folders(k)
>> Next k
>> Next j
>> End Sub
>>
>> Daniel
>>
>>> J'ai fait mon double click sur un libellé à la fin de l'execution rien ne
>>> se passe
>>> Voici les valeurs que j'ai en cours d'execution
>>> Si cela peux vous aider
>>>
>>> Set OlApp = CreateObject("OutLook.Application") = "outlook"
>>> Set fs = CreateObject("Scripting.FileSystemObject") = pas de
>>> valeur Set OlExp = OlApp.ActiveExplorer
>>> ="nothing
>>> Set NS = OlApp.GetNamespace("MAPI") ="MAPI
>>> For j = 1 To NS.Folders.Count
>>> = "1"
>>> Set f = NS.Folders(j)
>>> = "nom d'un répertoire de de outlook"
>>> For k = 1 To NS.Folders(j).Folders.Count =
>>> "2" Set Dossier = NS.Folders(j).Folders(k)
>>> = "nom d'un dossier"
>>> For Each i In Dossier.Items
>>> = ""
>>> If i.Subject
>>> = Target.Value Then
>>> i.display
>>> End If
>>> Next i
>>> Next k
>>> Next j
>>> End Sub
>>>
>>> "Daniel.C" a écrit :
>>>
>>>> Bonjour.
>>>> Ca change un peu la donne :
>>>> 1. on ne connait ni le fichier pst, ni le dossier dans lequel se trouve
>>>> le message (implicitement, il n'y a pas de doublons).
>>>> 2. le fichier pst est déjà ouvert dans Outlook (C'est à dire qu'il
>>>> figure dans la liste "Fichier", "Gestion de fichiers de données".
>>>> Dans cette cofiguration, le code suivant doit faire l'affaire, sauf si
>>>> une instruction est particulière à XL2007 :
>>>>
>>>> Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
>>>> As Boolean)
>>>> Dim OlApp As Object, NS As Object, Dossier As Object
>>>> Dim OlExp As Object
>>>> Dim i As Object, j As Integer, k As Integer
>>>> Cancel = True
>>>> Set OlApp = CreateObject("OutLook.Application")
>>>> Set fs = CreateObject("Scripting.FileSystemObject")
>>>> Set OlExp = OlApp.ActiveExplorer
>>>> Set NS = OlApp.GetNamespace("MAPI")
>>>> For j = 1 To NS.Folders.Count
>>>> Set f = NS.Folders(j)
>>>> For k = 1 To NS.Folders(j).Folders.Count
>>>> Set Dossier = NS.Folders(j).Folders(k)
>>>> For Each i In Dossier.Items
>>>> If i.Subject = Target.Value Then
>>>> i.display
>>>> End If
>>>> Next i
>>>> Next k
>>>> Next j
>>>> End Sub
>>>>
>>>> Daniel
>>>>
>>>>> pour répondre ta question:
>>>>> oui ma messagerie est ouverte j'ai donc accé à mes répertoires et à
>>>>> mes messages.
>>>>> j'ai encore un plantage
>>>>> A chaque test je ferme mon fichier excel pour bien repartir sur un
>>>>> programme propre
>>>>> Je pense que de base je dois bien click colonne A
>>>>>
>>>>> Que la messagerie soit ouverte ou fermé j'ai les résultats suivants
>>>>> j'ai fait les tests suivants messagerie ouverte et fermé
>>>>>
>>>>> Si je double click sur un libellé de la colonne A j'ai un plantage à la
>>>>> ligne Set Dossier = NS.Folders(NS.Folders.Count).Folders("test")
>>>>> Le terme "test" me surprend est il toujours d'actualité
>>>>>
>>>>> Si je double click sur un libellé de la colonne B j'ai un plantage à la
>>>>> ligne NS.AddStore Target.Offset(, 1).Value
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> "Daniel.C" a écrit :
>>>>>
>>>>>> La macro fournie pré-suppose que les fichiers pst ne sont pas chargés
>>>>>> dans Outlook. Si ce n'est pas le cas, dis-le.
>>>>>> Daniel
>>>>>>
>>>>>>> je n'ai pas bien compris le:
>>>>>>> " En supposant que le dossier et le fichier pst soit en colonne B"
>>>>>>>
>>>>>>> je pense que cela vient de m'on explication donc je reprends:
>>>>>>> Sur mon disque D:
>>>>>>> J'ai des dossiers :(sens dossier Explorateur)
>>>>>>> Dossier 1
>>>>>>> Dossier 2
>>>>>>> Dans ces dosssiers j'ai des fichiers xxx.pst
>>>>>>> Dossier 1: fichier a. pst, fichier b. pst, etc
>>>>>>> Dossier 2: fichier a. pst, fichier b. pst, etc
>>>>>>>
>>>>>>> Dans ces fichiers xx. pst j'ai aussi des dossiers (sens dossier
>>>>>>> outlook) Fichier 1.pst dossier aa, dossier bb, etc
>>>>>>>
>>>>>>> je vais donc copier sur ma feuille le libellé d'un message qui vient
>>>>>>> de: Dossier 1 > fichier a. pst > dossier aa message 1
>>>>>>> Dossier 2 > fichier b. pst > dossier bb message 2
>>>>>>>
>>>>>>> Voici ci dessous des exemples pour j'espére étre plus claire
>>>>>>>
>>>>>>> j'ai relancé votre ancien code ce matin et j'ai de nouveau une
>>>>>>> erreur??? Le programme plant ligne " NS.AddStore Target.Offset(,
>>>>>>> 1).Value"
>>>>>>>
>>>>>>> je suis un peux perdu
>>>>>>>
>>>>>>> "Daniel.C" a écrit :
>>>>>>>
>>>>>>>> Oups.
>>>>>>>> Lire :
>>>>>>>> En supposant que le dossier et le fichier pst soit en colonne B
>>>>>>>> au lieu de :
>>>>>>>> En supposant que le dossier du fichier pst soit en colonne B
>>>>>>>> Daniel
>>>>>>>>> En supposant que le dossier du fichier pst soit en colonne B :
>>>>>>>>>
>>>>>>>>> Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel
>>>>>>>>> As Boolean)
>>>>>>>>> Dim OlApp As Object, NS As Object, Dossier As Object
>>>>>>>>> Dim OlExp As Object
>>>>>>>>> Dim i As Object
>>>>>>>>> Cancel = True
>>>>>>>>> Set OlApp = CreateObject("OutLook.Application")
>>>>>>>>> Set fs = CreateObject("Scripting.FileSystemObject")
>>>>>>>>> Set OlExp = OlApp.ActiveExplorer
>>>>>>>>> Set NS = OlApp.GetNamespace("MAPI")
>>>>>>>>> NS.AddStore Target.Offset(, 1).Value
>>>>>>>>> Set objFolder = NS.Folders.Item(NS.Folders.Count)
>>>>>>>>> Set Dossier = NS.Folders(NS.Folders.Count).Folders("test")
>>>>>>>>> For Each i In Dossier.Items
>>>>>>>>> If i.Subject = Target.Value Then
>>>>>>>>> i.display
>>>>>>>>> End If
>>>>>>>>> Next i
>>>>>>>>> NS.RemoveStore objFolder
>>>>>>>>> End Sub
>>>>>>>>>
>>>>>>>>> Fais bien une sauvegarde de ton fichier pst courant avant de tester.
>>>>>>>>> Daniel
>>>>>>>>>
>>>>>>>>>> je confirme cela fonctionne dans le répertoire test
>>>>>>>>>> Par contre le besoin final est le suivant
>>>>>>>>>>
>>>>>>>>>> J'ai sur mon disque D plusieurs fichiers PST avec plusieurs
>>>>>>>>>> Répertoires
>>>>>>>>>>
>>>>>>>>>> d:/ Dossier 1.pst
>>>>>>>>>> Rep 1 Rep 2
>>>>>>>>>> Dossier 2.pst
>>>>>>>>>> Rep 1
>>>>>>>>>> Rep 2
>>>>>>>>>>
>>>>>>>>>> le besoin est de pouvoir ouvrir n'importe quel mail dans n'importe
>>>>>>>>>> lequel des répertoires
>>>>>>>>>>
>>>>>>>>>> j'espere qu'une solution est possible.
>>>>>>>>>>
>>>>>>>>>> "" a écrit :
>>>>>>>>>>
>>>>>>>>>>> Bonjour Daniel,
>>>>>>>>>>>
>>>>>>>>>>> Oui, qd Richard disait ne pas y arriver,
>>>>>>>>>>> ....j'avais pensé à cela.
>>>>>>>>>>> Même en session, il faudrait être autorisé via une fenêtre TSE ou
>>>>>>>>>>> autre
>>>>>>>>>>> pour être sur le serveur depuis le poste et pouvoir accèder ce
>>>>>>>>>>> répertoire.
>>>>>>>>>>> Ce que peu d'administrateurs réseau accepteraient , il me semble...
>>>>>>>>>>> Enfin puisqu'il n'est pas dans ce cas et que d'après son dernier
>>>>>>>>>>> post ça roule.
>>>>>>>>>>>
>>>>>>>>>>> @+
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> lSteph
>>>>>>>>>>>
>>>>>>>>>>> On 12 mar, 16:08, Daniel.C wrote:
>>>>>>>>>>>>> le .pst ou la boite .. si elle est sur le serveur et que seul
>>>>>>>>>>>>> l'administrateur réseau à cet accès!?
>>>>>>>>>>>>
>>>>>>>>>>>> Je n'ai jamais travaillé avec Exchange, J'imagine que,
>>>>>>>>>>>> effectivement tu n'y as pas accès jusquà ce que tu ouvres une
>>>>>>>>>>>> session ? Daniel
>>>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>
>>>>
>>>>
>>
>>
>>





1 2 3