WAB (carnet d'adresse de Outlook Express) et VB

Signaler
Messages postés
2
Date d'inscription
mardi 13 août 2002
Statut
Membre
Dernière intervention
22 août 2002
-
lebuzz
Messages postés
16
Date d'inscription
mercredi 4 août 2004
Statut
Membre
Dernière intervention
6 février 2006
-
Salut à tous,
je n'arrive pas à trouver comment on peut récupérer les contacts du WAB (carnet d'adresse de Outlook Express) sous VB ... j'ai rien trouvé la dessus sur le web, serais-je le premier à ce poser la question ???

5 réponses

Messages postés
48
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
3 octobre 2002

Salut,

Sur les dernières versions, je crois que il n' y as pas de contôles Active-X Outlook pour le faire alors débrouille-toi.

Sinon, si tu as le contrôles et que tu peux créer l' objet Outlook.Application :

Set out = CreateObject("Outlook.Application")
Set mapi = out.GetNameSpace("MAPI")
Set carnets = mapi.AddressLists
For Each carnet In carnets

If carnet.AddressEntries.Count <> 0 Then
carnet2 = carnet.AddressEntries.Count
For entree = 1 To carnet2
Set adresse = carnet.AddressEntries(entree)
...
Next
End If

Next
End If
Messages postés
48
Date d'inscription
jeudi 8 août 2002
Statut
Membre
Dernière intervention
3 octobre 2002

Salut,

Sur les dernières versions, je crois que il n' y as pas de contôles Active-X Outlook pour le faire alors débrouille-toi.

Sinon, si tu as le contrôles et que tu peux créer l' objet Outlook.Application :

Set out = CreateObject("Outlook.Application")
Set mapi = out.GetNameSpace("MAPI")
Set carnets = mapi.AddressLists
For Each carnet In carnets

If carnet.AddressEntries.Count <> 0 Then
carnet2 = carnet.AddressEntries.Count
For entree = 1 To carnet2
Set adresse = carnet.AddressEntries(entree)
...
Next
End If

Next
End If
Messages postés
2
Date d'inscription
mardi 13 août 2002
Statut
Membre
Dernière intervention
22 août 2002

Merci pour ton aide,
j'avait effectivement vu cette méthode, mais je me demandais si elle ne récupérait pas que les contacts d'Outlook et pas Outlook Express ...
je vais tester ... merci encore
Messages postés
4
Date d'inscription
jeudi 8 avril 2004
Statut
Membre
Dernière intervention
15 avril 2004

slut,
je voudrais construire un interface sur vb qui gère une liste de personne avec leur numero de telephone ,on peut avoir une possibilité d'ajouter ou de soustraire une personne.
merci
Messages postés
16
Date d'inscription
mercredi 4 août 2004
Statut
Membre
Dernière intervention
6 février 2006

'Autre possibilité ci-dessous, pour remplir une combo et éviter les doublons

Public Sub listemail(ByRef obj As ComboBox)
Dim x, i As Long
Dim a As Object
Dim out As Object
Dim mapi As Object
Dim ctrlists As Integer
Dim info As MapiRecip
Dim ancien As String
Dim tt As String

On Error GoTo err
Screen.MousePointer = 11

Set out = CreateObject("Outlook.application")
Set mapi = out.GetNameSpace("MAPI")
obj.Clear
ancien = ""
For ctrlists = 1 To mapi.AddressLists.Count
Set a = mapi.AddressLists(ctrlists)
For x = 1 To a.AddressEntries.Count
i = MAPIResolveName(0, 0, a.AddressEntries(x), 0, 0, info)
tt = Replace(info.Address, "SMTP:", "")
If InStr(tt, "@") And ancien <> tt Then
obj.AddItem Replace(info.Address, "SMTP:", "")
ancien = tt
End If
DoEvents
Next
DoEvents
Next
Set out = Nothing
Set mapi = Nothing
Screen.MousePointer = 0

Exit Sub
err:
Screen.MousePointer = 0
MsgBox Error$, vbExclamation, App.EXEName
End Sub