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 Word Discussion :

Afficher le carnet d'adresse Outlook dans un userform Word


Sujet :

VBA Word

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Consultante bureautique
    Inscrit en
    Septembre 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultante bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2018
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Afficher le carnet d'adresse Outlook dans un userform Word
    Bonjour,

    C'est ma première visite sur ce forum. Si c'est possible, pourriez-vous me donner une pistes de solutions ?

    En Word, dans un userform à l'ouverture d'un modèle de lettre, je voudrais un bouton "Carnet d'adresse" pour permettre à l'utilisateur de choisir son destinataire parmi ses contacts Outlook et que l'information sois coller dans un emplacement précis (signet, champs...).

    Est-ce possible ?

    Merci beaucoup.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par RideauNoir Voir le message
    Bonjour,

    Testé sur Office 2010 :

    Dans un module standard :
    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
     
    Option Explicit
     
    Sub InfoSelection_De_Dolphy35()
    '----------------------------------------------------
    ' Une adaptation du code trouvé dans :
    ' http://dolphy35.developpez.com/article/outlook/vba/
    '----------------------------------------------------
     
    'Déclaration des Objets et variables
    Dim MonApply As Outlook.Application
    Dim MonNSpace As Outlook.Namespace
    Dim I As Integer
     
     
        'Instance des Objets
        Set MonApply = Outlook.Application 'Application Outlook
        Set MonNSpace = MonApply.GetNamespace("MAPI") 'Banque MAPI
     
        With MonNSpace
             For I = 1 To .GetDefaultFolder(olFolderContacts).Items.Count 
                 UserForm2.ComboBox1.AddItem .GetDefaultFolder(olFolderContacts).Items(I)
               '  Debug.Print .GetDefaultFolder(olFolderContacts).Items(I)
             Next I
     
        End With
     
        MonApply.Quit
     
        With UserForm2
            .ComboBox1.ListIndex = 0
            .Show
        End With
     
        'Vide des instances
        Set MonApply = Nothing
        Set MonNSpace = Nothing
     
    End Sub
    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
     
    Sub MettreAJourEtReconstituerUnSignet(ByVal DocEnCours As Document, ByVal NomDuSignet As String, ByVal ContenuSignet As String)
     
    ' D'après la fonction modifiée RemplacerTexteSignet d'Olivier LEBEAU (Cf : tutoriel VBA Word)
     
    Dim MonRange As Range
     
        With DocEnCours
             If .Bookmarks.Exists(NomDuSignet) = True Then
                .Bookmarks(NomDuSignet).Select
                With Selection
                     .EndKey unit:=wdLine, Extend:=wdExtend ' Sélectionne le texte présent sur la ligne
                     .Range.Text = ContenuSignet & Chr(10)  ' Remplace le texte et fait un saut de ligne
                     .EndKey unit:=wdLine, Extend:=wdExtend ' Etend la sélection et englobe le texte dans le signet
                End With
                Set MonRange = Selection.Range
                .Bookmarks.Add NomDuSignet, MonRange ' Reconstruit le signet
                Set MonRange = Nothing
            End If
        End With
     
    End Sub
    Dans votre Userform :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private Sub CommandButton1_Click()
     
        MettreAJourEtReconstituerUnSignet ActiveDocument, "signet", Me.ComboBox1.Value
     
    End Sub
    Dans ThisDocument avec un bouton ActiveX
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Private Sub BoutonLancerLeUserForm_Click()
            InfoSelection_De_Dolphy35
    End Sub

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Consultante bureautique
    Inscrit en
    Septembre 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : Consultante bureautique
    Secteur : Enseignement

    Informations forums :
    Inscription : Septembre 2018
    Messages : 4
    Points : 5
    Points
    5
    Par défaut Merci
    Je vous remercie beaucoup de votre réponse et désolée du délai. Je n'ai pas pu tester votre réponse puisque nous avons changé d'orientation pour le modèle. Mais je garde l'info. Bonne journée.

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

Discussions similaires

  1. [XL-2013] Récupérer destinataires sélectionnés dans carnet d'adresse Outlook
    Par Chtik dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/03/2017, 20h16
  2. [Toutes versions] Recherche par mail dans carnet d'adresses Outlook
    Par jeanmidudu dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 06/06/2016, 10h17
  3. carnet d'adresses perdu dans Outlook 2010
    Par angelebeau dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 23/06/2015, 00h46
  4. Réponses: 2
    Dernier message: 02/09/2013, 12h25
  5. Afficher Carnet d'adresse outlook
    Par l0quito dans le forum Outlook
    Réponses: 2
    Dernier message: 02/02/2009, 09h35

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