IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Outlook Discussion :

Accès calendriers partagés via Exchange [Toutes versions]


Sujet :

Outlook

  1. #1
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2013
    Messages : 12
    Points : 11
    Points
    11
    Par défaut Accès calendriers partagés via Exchange
    Bonjour,

    Je suis en train de réaliser un outil Excel qui permet de restituer des informations de calendrier Outlook.

    Je coince au moment de restituer les calendriers qu'une personne a partagé avec moi.

    Je récupère bien le calendrier partagé par défaut via la méthode GetSharedDefaultFolder, mais le hic c'est que cette personne a plusieurs calendriers partagés avec moi. Et je n'arrive pas à les récupérer (via une boucle sur GetSharedDefaultFolder.parent par exemple).

    Je souhaiterai pouvoir naviguer dans l'arborescence des dossiers partagés aussi simplement que dans celle des dossiers propriétaires, où il suffit de rajouter des niveaux en .folders("xxxx").

    Je trouve des éléments de réponse sur le net pour des problèmes similaires, mais les solutions proposées ne proposent "que" d'accéder au calendrier partagé par défaut.

    J'espère avoir été clair.

    Merci d'avance !
    nroux115

  2. #2
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2013
    Messages : 12
    Points : 11
    Points
    11
    Par défaut Help !
    Help !

  3. #3
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Salut,
    En fait ton message aurait du être dans le Sous forum VBA !

    Vois tu dans l'arboressence à gauche ces calendriers ?

  4. #4
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2013
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Ah, désolé.
    Merci pour ta réponse.

    Oui je vois bien les calendriers sur la gauche, dans l'arborescence dans le sous-menu des calendriers partagés.

    Et j'arrive à créer / modifier des réunions sur les calendriers que le propriétaire a partagé avec moi.

    Merci,
    Nroux115

  5. #5
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Bonjour,
    Essaye ce code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    Sub test20080429()
     
        Dim nsOutlook As Outlook.NameSpace
        Dim oRecipient As Outlook.Recipient
        Dim mItem As Outlook.MailItem
        Dim fld As Outlook.MAPIFolder
        Dim fldRacine As Outlook.MAPIFolder
     
     
        Set nsOutlook = Outlook.GetNamespace("MAPI")
     
        Set oRecipient = nsOutlook.CreateRecipient("TON COLLEGUE")
        oRecipient.Resolve
     
        If oRecipient.Resolved Then
            Set fld = nsOutlook.GetSharedDefaultFolder(oRecipient, olFolderInbox)
     
            Set fldRacine = fld
            Do
                Set fldRacine = fldRacine.Parent
     
            Loop Until InStr(3, fldRacine.FolderPath, "\") = 0
     
            For Each sfld In fldRacine.Folders
     
                Select Case sfld.DefaultItemType
                Case 1: Fldtype = "Objet AppointmentItem"
                Case 2: Fldtype = "Objet ContactItem"
                Case 7: Fldtype = "Objet DistListItem"
                Case 4: Fldtype = "Objet JournalItem"
                Case 0: Fldtype = "Objet MailItem"
                Case 9: Fldtype = "Objet MobileItem qui représente un message MMS (Multimedia Messaging Service)"
                Case 8: Fldtype = "Objet MobileItem qui représente un message SMS (Short Message Service)"
                Case 5: Fldtype = "Objet NoteItem"
                Case 6: Fldtype = "Objet PostItem"
                Case 3: Fldtype = "Objet TaskItem"
                End Select
                MsgBox sfld & vbCr & Fldtype
     
     
            Next sfld
     
            'fld.Display
     
            '  For Each mItem In fld.Items
            '    If mItem.UnRead = True Then
            '    '  ...
            '    Else
            '     ' ...
            '    End If
            '  Next
        Else
            MsgBox "User inconnu", vbCritical, "Inconnu"
        End If
    End Sub
    Le problème peut venir de l'arboresence même de ton collègue, si tu as 2 dossiers Calendriers il peuvent être au même niveau dans la liste des dossier (EN POINTANT SUR COURRIER et l'icone liste des dossiers en bas) où être un sous dossier de l'un o même d'un autre dossier de type Courrier par exemple. Il faut dans ce cas là créer un macro récursive pour parcourir tous les dossier et sous-dossiers

  6. #6
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    Voici une autre façon de faire avec le panneau des Calendriers partagés

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    Sub ListeCalendrierPartagé()
    '---------------------------------------------------------------------------------------
    ' Procedure : ListeCalendrierPartagé
    ' Author    : Oliv-
    ' Date      : 19/02/2014
    ' Purpose   : Liste les des "calendrier partagé" et le Dossier correpondant
    '---------------------------------------------------------------------------------------
    '
        Dim objNS As Outlook.NameSpace
        Dim objExpCal As Outlook.Explorer
        Dim objNavMod As Outlook.CalendarModule
        Dim objNavCalPart As Outlook.NavigationFolders
        Dim i, objitem
     
        Set objNS = Application.Session
        Set objExpCal = objNS.GetDefaultFolder(olFolderCalendar).GetExplorer
     
        Set objNavMod = objExpCal.NavigationPane.Modules.GetNavigationModule(olModuleCalendar)
        Set objNavCalPart = objNavMod.NavigationGroups.item("Calendriers partagés").NavigationFolders
        For i = 1 To objNavCalPart.Count
            Set objitem = objNavCalPart(i)
            On Error Resume Next
     
            FoldName = objitem.Folder.Name & "-" & objitem.Folder.FullFolderPath
            If Err Then FoldName = "Pas accessible"
    Debug.Print objitem & "-->" & FoldName
     
        Next i
    End Sub

  7. #7
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2013
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Slt Oliv-

    Merci pour tes réponses !

    Malheureusement la boucle récursive en .parent plante chez moi.
    Je l'avais déjà par ailleurs testée avec olFolderCalendar et ça plantait aussi, comme si je ne pouvais pas "naviguer" dans l'arborescence partagée du recipient.

    Pour le 2nd code, il plante sur la propriété .FullFolderPath. Je n'ai dans ma biblio que FolderPath.
    Avec FolderPath, ça fonctionne : je récupère le FolderPath du calendrier.

    J'avais déjà testé ce code que tu avais posté sur un autre post. Mais par contre je coinçais car les propriétés des navigationfolders ne permettent pas d'atteindre les items type rendez-vous des calendriers par exemple.

    Ayant à présent le FolderPath dans Exchange de mes calendriers partagés, y a-t-il un moyen de lire les items d'un folder directement à partir de son path ? Sans passer par une navigation arborescence en .folders.

    Précision : j'exécute VBA depuis Excel (2013), pas directement dans Outlook.

    Un grand merci pour ton temps !
    nroux115

  8. #8
    Expert éminent
    Avatar de Oliv-
    Homme Profil pro
    solution provider
    Inscrit en
    Mars 2006
    Messages
    4 087
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : solution provider

    Informations forums :
    Inscription : Mars 2006
    Messages : 4 087
    Points : 7 168
    Points
    7 168
    Billets dans le blog
    20
    Par défaut
    A priori oui

  9. #9
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2013
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Ca fonctionne bien en local.

    Je ne suis plus dans l'environnement Exchange pour aujourd'hui : j'y retourne fin de semaine et je teste.
    Mais je pense que ça va marcher, puisque j'avais omis de mettre le .folder entre objitem et .items.

    Si c'est ça....

    Merci encore pour ton aide !!

  10. #10
    Membre à l'essai
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Août 2013
    Messages
    12
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2013
    Messages : 12
    Points : 11
    Points
    11
    Par défaut
    Slt Oliv-

    Mon problème venait bien de l'oubli du .folder....

    Merci encore pour ton aide, je passe le sujet en résolu !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2003] Ouvrir un calendrier partagé Via excel
    Par spidey89 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/12/2011, 08h09
  2. Réponses: 6
    Dernier message: 12/12/2008, 17h42
  3. [Exchange 2003 Hébergé] Calendriers partagés
    Par Sunny dans le forum Exchange Server
    Réponses: 0
    Dernier message: 21/02/2008, 17h12
  4. Réponses: 7
    Dernier message: 08/10/2007, 15h59
  5. Réponses: 2
    Dernier message: 24/09/2005, 09h47

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo