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

VBA Access Discussion :

ouvrir outlook et afficher dossier [AC-2007]


Sujet :

VBA Access

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut ouvrir outlook et afficher dossier
    Bonsoir,
    J'ai le plaisir de faire appel à l'équipe ...; mon cerveau va exploser :-) car je cherche et cherche mais ne trouve point.

    Je souhaiterais ouvrir un dossier spécifique d'outlook depuis une formulaire access. Le nom du dossier serait dans la requête et le chemin serait tjrs le même (ça doit marcher chez tous les utilisateurs)...

    En d'autres mots : l'utilisateur clique sur un bouton placé sur le formulaire CLIENT. Cela ouvre l'application Outlook en arrivant directement sur le dossier Outlook correspondant au nom de l'entreprise (dans le sous-dossiers CLIENT de la boîte de réception)

    Ce besoin relativement simple (sur papier) ... ben je n'arrive pas à la réaliser.

    Je précise que j'ai abandonné l'option des tables liées à outlook qui ne correspond pas au besoin.

    Est-ce qu'un esprit supérieur pourrait m'aider :-)
    Un très grand merci d'avance,
    Roger
    ps: comme d'hab je publierai la solution telle qu'elle fonctionnera chez moi

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut une piste ?
    Bonjour,
    Je cherche toujours... Je me suis dit que si j'arrivais avec un bouton avec ouvrir Outlook ce serait sympa ,
    J'ai trouvé un article intéressant
    http://office.microsoft.com/fr-be/outlook-help/commutateurs-de-ligne-de-commande-HP001003110.aspx

    En substance on peut ouvrir Outlook avec une ligne de commande dans Excécuter "
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C:\Program Files\Microsoft Office\Office11\Outlook.exe
    On peut y ajouter des paramètres comme par ex :
    Démarre Outlook et ouvre le dossier spécifié dans une nouvelle fenêtre. Par exemple, pour ouvrir Outlook et afficher le calendrier par défaut, utilisez :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    c:\Program Files\Microsoft Office\Office11\Outlook.exe" /select outlook:calendar
    Est-ce un début de piste ... Je me demande si cela fonctionnerait dans le contexte vba ; je vais essayer ....

    D'autres idées ? :-)
    Merci d'avance
    Roger

  3. #3
    Membre actif Avatar de Flyoss
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2012
    Messages
    157
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Cher (Centre)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Mars 2012
    Messages : 157
    Points : 278
    Points
    278
    Par défaut
    Citation Envoyé par rogerfon Voir le message
    Est-ce un début de piste ... Je me demande si cela fonctionnerait dans le contexte vba ; je vais essayer ....

    D'autres idées ? :-)
    Cela me parait une bonne option
    Regardes un peu du côté de la commande Shell

  4. #4
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,

    J'ai essayé de modifier une routine que j'ai et qui ouvre Outlook par automation.
    Je suis sous Office 2003 et je crois que Outlook.MAPIFolder est remplacé par Outlook.Folder dans Office 2007. A vérifier.

    L'exemple de code ouvre Oulook s'il n'est pas déjà ouvert et va dans le sous-dossier toto\titi de la boîte de réception (Inbox).
    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
    Sub OuvrirOutlook()
    Dim oOLApp As Outlook.Application
    Dim oOLXplr As Outlook.Explorer
    Dim oOLFldInbox As Outlook.MAPIFolder, oOLFld As Outlook.MAPIFolder
     
    ' Tenter de récupérer une instance d'Outlook
    On Error Resume Next
    Set oOLApp = GetObject(, "Outlook.Application")
    On Error GoTo 0
     
    ' Si échec tentative, créer Outook
    If oOLApp Is Nothing Then
        Set oOLApp = CreateObject("Outlook.Application")
    End If
     
    ' Référencer le dossier Outlook Inbox
    Set oOLFldInbox = oOLApp.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
     
    ' S'assurer qu'on a une fenêtre Outlook visible
    If oOLApp.Explorers.Count = 0 Then
       Set oOLXplr = oOLApp.Explorers.Add(oOLFldInbox)
       oOLXplr.Display
    Else
       ' Force l'affichage de la première fenêtre d'exploration
       Set oOLXplr = oOLApp.Explorers(1)
       oOLXplr.Display
    End If
     
    ' Aller dans sous-dossier "toto/titi" de Inbox
    ' . On part du dossier Inbox et on descend
    Set oOLFld = oOLFldInbox.Folders.Item("toto")
    Set oOLFld = oOLFld.Folders.Item("titi")
    ' . On définit le dossier de la fenêtre d'exploration Outlook
    Set oOLXplr.CurrentFolder = oOLFld
     
    End Sub
    A+

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut Tout d'abord
    Bonjour,
    Génial ! Un tout grand merci LedZepII ! C'est tout à fait ce que je cherchais ...du bel ouvrage ! J'ai essayé, je suis confronté à un problème.
    Une message d'erreur
    Erreur de compilation Type non défini par l'utilisateur
    . D'après mes recherches il s'agit d'une problème de "trucs" non activés dans VBA (Outils/références) .... et là ça se corse car je n'ai pas accès et j'ai un autre message d'erreur (accès au registre) http://support.microsoft.com/kb/269383/fr

    J'ai contacté l'admin car je travaille dans un envi. TSE, j'espère qu'il arrivera à régler ce problème car j'ai impatience de tester ce code :-)

    Je tiens au courant ! Merci encore pour ce cadeau génial qui me donne espoir :-).
    Roger





    ps : Je remercie aussi Flyos au passage
    ps2: je croyais avoir répondu hier soir mais j'ai certainement fait une erreur

  6. #6
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut Love you
    LedZepII je t'adore !!!! j'ai essayé en local et ça marche du feu de dieu !!!
    A tous .... LedZepII est un homme génial ! Je suis heureux ! Merci bcp !
    Roger

    ps : à propos dans vba Outils/références j'ai activé en local
    Microsoft Outlook 12.0 Object Library

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut dans la foulée
    Dans la foulée ; je me posais une question .... en fait serait-il possible à partir de VBA de créer des dossiers dans outlook ?

  8. #8
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,

    J'ai cherché un peu, et oui on peut créer des sous-dossiers.

    Voici d'abord une fonction qui me sert à déterminer si un sous-dossier existe.
    (Je n'arrive pas à le faire par gestion d'erreurs, le code d'erreur n'étant pas tout le temps le même).
    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
    Function SousDossierExiste(oOLFld As Outlook.MAPIFolder, sSsDossier As String) As Boolean
    Dim bExiste As Boolean
    Dim oOLSsDossier As Outlook.MAPIFolder
     
    On Error GoTo ErrH
     
    Set oOLSsDossier = oOLFld.Folders.Item(sSsDossier)
    bExiste = True
     
    Sortie:
    SousDossierExiste = bExiste
    Exit Function
     
    ErrH:
    bExiste = False
    Resume Sortie
    End Function
    Voici maintenant l'exemple de code pour créer un sous-dossier.
    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
    Sub TestCreerSousDossier()
    Dim oOLApp As Outlook.Application
    Dim oOLFldInbox As Outlook.MAPIFolder, oOLFld As Outlook.MAPIFolder
     
    On Error GoTo ErrH
     
    ' Tenter de récupérer une instance d'Outlook
    Set oOLApp = GetObject(, "Outlook.Application")
     
    ' Référencer le dossier Outlook Inbox
    Set oOLFldInbox = oOLApp.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
    ' Référencer le sous-dossier "toto"
    If SousDossierExiste(oOLFldInbox, "toto") Then
       Set oOLFld = oOLFldInbox.Folders.Item("toto")
    Else
        ' Le sous-dossier n'existe pas, on le crée
        Set oOLFld = oOLFldInbox.Folders.Add("toto")
    End If
    ' Créer un sous-dossier "toto_A" dans "toto"
    oOLFld.Folders.Add "toto_A"
     
    Sortie:
    Exit Sub
     
    ErrH:
    Select Case Err.Number
        Case 429 ' Un composant ActiveX ne peut pas créer d'objet - causé par GetObject
             MsgBox "Outlook n 'est pas ouvert", , "Echec"
             Resume Sortie
    End Select
    MsgBox "Erreur No " & Err.Number & "(" & Hex(Err.Number) & ") : " & Err.Description
    Resume Sortie
    End Sub
    Rien de très compliqué, pour créer un sous-dossier on l'ajoute à la collection Folders d'un dossier.

    A+

  9. #9
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut ça marche sur TSE
    Génial, tu es génial !

    Mais là Je t'avoue que ça me dépasse , pour le moment ça me paraît c'est deux crans au-dessus de mes compétences ; j'ai un peu essayé le code pour test l'existence d'un dossier, mais ça m'échappe


    A propos, Maintenant ça marche aussi sur Terminal server sans l'intervention de l'admin.
    Le truc : j'avais (en local) activé
    Microsoft Outlook 12.0 Object Library
    J'ai remis le fichier Access sur Terminal server ...et ça marche !

    ps: message commencé à 12H30.... envoyé à 18h30 pour cause de promenade forcée suite à une coupure de courant pendant 3h pour cause de maintenance .... on dépend vraiment de l'électricité :-)

  10. #10
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,
    Citation Envoyé par rogerfon Voir le message
    j'ai un peu essayé le code pour test l'existence d'un dossier, mais ça m'échappe
    Si tu fais allusion à la fonction SousDossierExiste(...), cette dernière ne sert que pour la sub TestCreerSousDossier() de manière à en alléger le code.
    Dans TestCreerSousDossier() , si je fais directement ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ' Référencer le dossier Outlook Inbox
    Set oOLFldInbox = oOLApp.GetNamespace("MAPI").GetDefaultFolder(olFolderInbox)
    ' Référencer le sous-dossier "toto"
    Set oOLFld = oOLFldInbox.Folders.Item("toto")
    ... sans m'assurer que le sous-dossier "toto" existe, cela génère une erreur.
    Je pensais intercepter l'erreur par son numéro, mais je me suis apperçu que le code d'erreur n'était pas toujours le même.
    Donc, pas gérable de cette manière.
    L'alternative est de tester l'existence du sous-dossier avant de le référencer.

    A+

  11. #11
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut super
    Bonjour LedZepII,
    Encore merci de ton aide ! Le code de création de dossier marche très bien !
    C'est super , je suis très heureux :-). Le code erreur est franchemement un détail

    Il m'est venu une idée mais dis-moi si j'abuse; je voulais savoir si on pouvait indiquer à Outlook de créer un dossier non pas de la dossier par défaut mais dans un sous dossier d'une autre boîte aux lettres partagées (les droits sont OK en écriture : AutreBoiteAuxLettres/BOiTERECEPTION/TOTO/SOUSTOTO

    J'ai essayé et cherché mais sans succès ; je me disais que c'était peut-être une bêtise à changer dans le code ; aurais-tu une idée ? Roger
    ps : j'espère pouvoir t'aider à mon tour dans un autre domaine :-)

  12. #12
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,

    Je pense qu'on doit pouvoir accéder à une autre boîte aux lettres.
    Je le fait au boulot pour supprimer des emails.
    Malheureusement je suis en congés et je ne sais plus comment je fais.

    Essaie ce bout de code pour voir :
    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
    Sub TestHierarchie()
    Dim oOLApp As Outlook.Application
    Dim oOLnmsp As Outlook.NameSpace
    Dim oOLFldL1 As Outlook.MAPIFolder
    Dim oolFldL2 As Outlook.MAPIFolder
    Dim sDump As String
     
    On Error GoTo ErrH
     
    ' Tenter de récupérer une instance d'Outlook
    Set oOLApp = GetObject(, "Outlook.Application")
    ' Référencer espace de nom
    Set oOLnmsp = oOLApp.GetNamespace("MAPI")
    ' Lister les dossier
    For Each oOLFldL1 In oOLnmsp.Folders
        sDump = sDump & "MAPI > " & oOLFldL1.Name & " (" & oOLFldL1.Class & ")" & vbCrLf
        For Each oolFldL2 In oOLFldL1.Folders
            sDump = sDump & "MAPI > " & oOLFldL1.Name & " > " & oolFldL2.Name & " (" & oolFldL2.Class & ")" & vbCrLf
        Next
    Next
    Debug.Print sDump
     
    Sortie:
    Exit Sub
     
    ErrH:
    Select Case Err.Number
        Case 429 ' Un composant ActiveX ne peut pas créer d'objet - causé par GetObject
             MsgBox "Outlook n 'est pas ouvert", , "Echec"
             Resume Sortie
    End Select
    MsgBox "Erreur No " & Err.Number & "(" & Hex(Err.Number) & ") : " & Err.Description
    Resume Sortie
    End Sub
    Outlook doit être déjà ouvert, et le résultat du code s'affiche dans la fenêtre d'exécution VBA.
    Alt+F11 pour aller dans l'éditeur VB et Ctrl+G pour afficher la fenêtre d'exécution.
    Par exemple sur mon pc ça donne :
    MAPI > Fichier de données Outlook (2)
    MAPI > Fichier de données Outlook > Éléments supprimés (2)
    MAPI > Fichier de données Outlook > Boîte de réception (2)
    MAPI > Fichier de données Outlook > Boîte d'envoi (2)
    MAPI > Fichier de données Outlook > Éléments envoyés (2)
    MAPI > Fichier de données Outlook > Calendrier (2)
    MAPI > Fichier de données Outlook > Contacts (2)
    MAPI > Fichier de données Outlook > Journal (2)
    MAPI > Fichier de données Outlook > Notes (2)
    MAPI > Fichier de données Outlook > Tâches (2)
    MAPI > Fichier de données Outlook > Brouillons (2)
    MAPI > Fichier de données Outlook > Flux RSS (2)
    MAPI > Fichier de données Outlook > Paramètres d’action de conversation (2)
    MAPI > Fichier de données Outlook > Paramètres des étapes rapides (2)
    MAPI > Fichier de données Outlook > Junk E-mail (2)
    "Fichier de données Outlook" est ma boîte aux lettres.
    S'il y a d'autres boîtes aux lettres elles devraient apparaître, mais je n'en suis pas certain.
    C'est pour ça qu'il faudrait que tu exécute le bout de code donné plus haut.

    A+

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut merci
    Cher LedZepII, Je te remercie encore une fois ; j'ai vraiment eu bcp de chance de tomber sur toi, car je vais pouvoir faire des choses incroyables avec les codes que tu m'as offert . C'est vraiment super !
    Je vais essayer le code pour voir ; Excellente nuit euh journée :-)
    Bien à toi ,Roger

  14. #14
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut j'ai essayé
    Cher LedZepII, Ton code a bien fonctionné ,
    J'ai récupéré ce code suivant :
    MAPI > Boîte aux lettres - Ressources Réunion> Boîte de réception (2)[/QUOTE]

    J'ai essayé mais sans succès ; en réalité, je ne sais pas trop comme je dois l'écrire ; une fois de plus, si tu n'en as pas marre :-) , ça m'intéresse de bénéficier de ton expertise ; Merci beaucoup ; ROger

    ps: je ne pense pas pouvoir t'aider dans le domaine de l'informatique :-)

  15. #15
    Expert éminent
    Avatar de LedZeppII
    Homme Profil pro
    Maintenance données produits
    Inscrit en
    Décembre 2005
    Messages
    4 485
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Maintenance données produits
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2005
    Messages : 4 485
    Points : 7 768
    Points
    7 768
    Par défaut
    Bonjour,

    Pour atteindre un dossier d'une autre boîte aux lettres, c'est peu différent.
    On ne peut plus atteindre la boîte de réception avec GetDefaultFolder(olFolderInbox).

    Voila un exemple :
    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
    Sub TestAccesDossier()
    Dim oOLApp As Outlook.Application
    Dim oOLnmsp As Outlook.NameSpace
    Dim oOLFldBAL As Outlook.MAPIFolder
    Dim oOLFldInbox As Outlook.MAPIFolder
    Dim sNomBAL As String, sNomInbox As String
     
    On Error GoTo ErrH
    ' Nom de la boîte aux lettres et nom de la boîte de réception
    sNomBAL = "Fichier de données Outlook"
    sNomInbox = "Boîte de réception"
     
    ' Tenter de récupérer une instance d'Outlook
    Set oOLApp = GetObject(, "Outlook.Application")
    ' Référencer espace de nom. MAPI
    Set oOLnmsp = oOLApp.GetNamespace("MAPI")
    ' Référencer boîte aux lettres. MAPI > Boîte aux lettres
    Set oOLFldBAL = oOLnmsp.Folders(sNomBAL)
    ' Référencer la boîte de réception de cette boîte aux lettres.  MAPI > Boîte aux lettres > Boîte de réception
    Set oOLFldInbox = oOLFldBAL.Folders("Boîte de réception")
     
    ' Afficher ce dossier
    Set oOLApp.ActiveExplorer.CurrentFolder = oOLFldInbox
     
    Sortie:
    Exit Sub
     
    ErrH:
    Select Case Err.Number
        Case 429 ' Un composant ActiveX ne peut pas créer d'objet - causé par GetObject
             MsgBox "Outlook n 'est pas ouvert", , "Echec"
             Resume Sortie
    End Select
    MsgBox "Erreur No " & Err.Number & "(" & Hex(Err.Number) & ") : " & Err.Description
    Resume Sortie
    End Sub
    Remplace cette partie ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ' Nom de la boîte aux lettres et nom de la boîte de réception
    sNomBAL = "Fichier de données Outlook"
    sNomInbox = "Boîte de réception"
    ... par ...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    ' Nom de la boîte aux lettres et nom de la boîte de réception
    sNomBAL = "Boîte aux lettres - Ressources Réunion"
    sNomInbox = "Boîte de réception"
    Ensuite pour tester le code, dans Outlook place toi dans ta boîte de réception.
    Lance le code et tu devrai te retrouver dans la boîte de réception de l'autre boîte aux lettres.

    A+

  16. #16
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut moi aussi
    Bonjour Cher LedZepII,
    Moi aussi j'aime LedZep à propos :-)
    Avec toi, j'apprends bcp (et tout ceux qui vont découvrir ce sujet) et j'arrive à faire des prouesses ! Je t'en remercie.
    L'outil que j'ai mis en oeuvre va être présenté à mes collègues cet aprem par un utilisateur (c'est tjrs mieux lol) ; je vais avoir bcp de retours c'est certain, sache que je parlerai d'un certain ledzepII qui m'a vachement aidé sur une partie qui m'échappait complètement ! Merci encore !

    J'étais à l'extérieur hier ; je vais essayé le dernier code qui tu m'as envoyé , je suis certain que ça va marcher ! Je te tiens au courant.Excellent we, Roger

  17. #17
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    90
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2007
    Messages : 90
    Points : 59
    Points
    59
    Par défaut Génial !
    Génial ça marche ! Voici le code adapté qui marche

    Le voici :
    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
     
    Private Sub Commande20_Click()
    'Sub TestAccesDossier()
    Dim oOLApp As Outlook.Application
    Dim oOLnmsp As Outlook.NameSpace
    Dim oOLFldBAL As Outlook.MAPIFolder
    Dim oOLFldInbox As Outlook.MAPIFolder
    Dim sNomBAL As String, sNomInbox As String
     
    On Error GoTo ErrH
    ' Nom de la boîte aux lettres et nom de la boîte de réception
    sNomBAL = "Boîte aux lettres - Ressource Salle de Réunion"
    sNomInbox = "Boîte de réception"
     
    ' Tenter de récupérer une instance d'Outlook
    Set oOLApp = GetObject(, "Outlook.Application")
    ' Référencer espace de nom. MAPI
    Set oOLnmsp = oOLApp.GetNamespace("MAPI")
    ' Référencer boîte aux lettres. MAPI > Boîte aux lettres
    Set oOLFldBAL = oOLnmsp.Folders(sNomBAL)
    ' Référencer la boîte de réception de cette boîte aux lettres.  MAPI > Boîte aux lettres > Boîte de réception
    Set oOLFldInbox = oOLFldBAL.Folders("Boîte de réception")
     
    ' Afficher ce dossier
     
    Set oOLFldInbox = oOLFldInbox.Folders.Item("Dossier CLIENT PUBLIC")
    Set oOLFldInbox = oOLFldInbox.Folders.Item(Me.Nom.Value)
     
     
     
    Set oOLApp.ActiveExplorer.CurrentFolder = oOLFldInbox
     
     
     
    Sortie:
    Exit Sub
     
    ErrH:
    Select Case Err.Number
        Case 429 ' Un composant ActiveX ne peut pas créer d'objet - causé par GetObject
             MsgBox "Outlook n 'est pas ouvert", , "Echec"
             Resume Sortie
    End Select
    MsgBox "Erreur No " & Err.Number & "(" & Hex(Err.Number) & ") : " & Err.Description
    Resume Sortie
    End Sub


    (j'ai mixé avec l'aute pour arriver dans le bon sous dossier ! Merci encore !

    Je vais maintenant voir si j'arrive à créer un dossier public ; avec tout ce que j'ai en main, je dois savoir le faire ! Bien à toi , Roger

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

Discussions similaires

  1. Ouvrir outlook + remplir l'adresse destinataire
    Par Ice-tea dans le forum Delphi
    Réponses: 3
    Dernier message: 28/08/2006, 10h49
  2. Comment ouvrir Outlook Express à partir d'une form ( Form's buider d'oracle)?
    Par Fleur-Anne.Blain dans le forum Outlook Express / Windows Mail
    Réponses: 3
    Dernier message: 17/07/2006, 11h15
  3. Ouvrir Outlook Express dans un champs Access
    Par Badboy62cfp dans le forum Access
    Réponses: 1
    Dernier message: 07/06/2006, 13h32
  4. Réponses: 3
    Dernier message: 03/01/2006, 21h43
  5. PB ouvrir outlook et création de mail sans l'envoyer
    Par adelhuille dans le forum Access
    Réponses: 2
    Dernier message: 06/01/2005, 16h37

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