Bonjour à tous,
Je suis occupé de travail sur Outlook à partir de Windev 8 avec des
objets Ole Dynamique. Jusque là pas de problème. Par contre, si je suis
l'exemple donnée par MSDN pour une gestion des listes de distributions
des contacts d'Outlook, je devrais utiliser une fonction VBa
"TypeName()". Je ne retrouve pas une façon de faire sous Windev. Est-ce
que qlq'un a déjà eu ce souci et si oui comment l'a t'il résolu?
Merci d'avance pour vos réponses.
Albert-Pierre
--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
elecoest
"Albert-Pierre Hache" a écrit dans le message de news:
Bonjour à tous, Je suis occupé de travail sur Outlook à partir de Windev 8 avec des objets Ole Dynamique. Jusque là pas de problème. Par contre, si je suis l'exemple donnée par MSDN pour une gestion des listes de distributions des contacts d'Outlook, je devrais utiliser une fonction VBa "TypeName()". Je ne retrouve pas une façon de faire sous Windev. Est-ce que qlq'un a déjà eu ce souci et si oui comment l'a t'il résolu?
Pour nous aider, aurais-tu un bout de code VB ou un lien renvoyant dessus?
"Albert-Pierre Hache" <hapx@skynet.be> a écrit dans le message de news:
mn.c2cd7d4737450fca.6782@skynet.be...
Bonjour à tous,
Je suis occupé de travail sur Outlook à partir de Windev 8 avec des
objets Ole Dynamique. Jusque là pas de problème. Par contre, si je suis
l'exemple donnée par MSDN pour une gestion des listes de distributions
des contacts d'Outlook, je devrais utiliser une fonction VBa
"TypeName()". Je ne retrouve pas une façon de faire sous Windev. Est-ce
que qlq'un a déjà eu ce souci et si oui comment l'a t'il résolu?
Pour nous aider, aurais-tu un bout de code VB ou un lien renvoyant dessus?
"Albert-Pierre Hache" a écrit dans le message de news:
Bonjour à tous, Je suis occupé de travail sur Outlook à partir de Windev 8 avec des objets Ole Dynamique. Jusque là pas de problème. Par contre, si je suis l'exemple donnée par MSDN pour une gestion des listes de distributions des contacts d'Outlook, je devrais utiliser une fonction VBa "TypeName()". Je ne retrouve pas une façon de faire sous Windev. Est-ce que qlq'un a déjà eu ce souci et si oui comment l'a t'il résolu?
Pour nous aider, aurais-tu un bout de code VB ou un lien renvoyant dessus?
Albert-Pierre Hache
elecoest a utilisé son clavier pour écrire :
"Albert-Pierre Hache" a écrit dans le message de news:
Bonjour à tous, Je suis occupé de travail sur Outlook à partir de Windev 8 avec des objets Ole Dynamique. Jusque là pas de problème. Par contre, si je suis l'exemple donnée par MSDN pour une gestion des listes de distributions des contacts d'Outlook, je devrais utiliser une fonction VBa "TypeName()". Je ne retrouve pas une façon de faire sous Windev. Est-ce que qlq'un a déjà eu ce souci et si oui comment l'a t'il résolu?
Pour nous aider, aurais-tu un bout de code VB ou un lien renvoyant dessus?
Voici l'exemple de code VBa sur lequel je me base :
Dim myOlApp As New Outlook.Application Dim myNameSpace As Outlook.NameSpace Dim myFolder As Outlook.MAPIFolder Dim myDistList As Outlook.DistListItem Dim tmpRecips As Outlook.Recipients Set myNameSpace = myOlApp.GetNamespace("MAPI") Set tmpRecips = myOlApp.CreateItem(olMailItem).Recipients tmpRecips.Add myNameSpace.CurrentUser.Name Set myFolder = myNameSpace.GetDefaultFolder(olFolderContacts) For x = 1 To myFolder.Items.Count If TypeName(myFolder.Items.Item(x)) = "DistListItem" Then Set myDistList = myFolder.Items.Item(x) For y = 1 To myDistList.MemberCount If myDistList.GetMember(y).Name = myNameSpace.CurrentUser.Name Then myDistList.RemoveMembers tmpRecips myDistList.Save Exit For End If Next y End If Next x
Et voici le code que j'ai fait en Windev :
myOlApp est un objet OLE dynamique myNameSpace est un objet OLE dynamique myFolder est un objet OLE dynamique myDistList est un objet OLE dynamique myOlItems est un objet OLE dynamique
objFolder est un objet OLE dynamique objItems est un objet OLE dynamique objContacts est un objet OLE dynamique Contacts est une chaîne NbContacts est un entier i,j est un entier=1 olFolderContacts est un entier
POUR i= 1 A myFolder>>Items>>Count // *** C'est ici que je coince **** > si TypeVar(myFolder>>Items>>Item(i)) ="DistListItem" alors //Liste de distribution myDistList=myFolder>>Items>>Item(i) pour j = 1 a myDistList>>MemberCount OlContact(myDistList>>GetMember(j),i) FIN sinon // Contact OlContact(myFolder>>items(i),i) fin FIN
En fait, j'ai besoin de savoir si l'élément que je lit dans les contacts est un "Contact" ou une "Liste de distribution" que je devrais parcourir également pour aller controler les contacts s'y retrouvant dedans. J'ai su transposer le code mais je bloque sur le "TypeName()". Merci pour l'aide.
-- Ceci est une signature automatique de MesNews. Site : http://mesnews.no-ip.com
elecoest a utilisé son clavier pour écrire :
"Albert-Pierre Hache" <hapx@skynet.be> a écrit dans le message de news:
mn.c2cd7d4737450fca.6782@skynet.be...
Bonjour à tous,
Je suis occupé de travail sur Outlook à partir de Windev 8 avec des
objets Ole Dynamique. Jusque là pas de problème. Par contre, si je suis
l'exemple donnée par MSDN pour une gestion des listes de distributions
des contacts d'Outlook, je devrais utiliser une fonction VBa
"TypeName()". Je ne retrouve pas une façon de faire sous Windev. Est-ce
que qlq'un a déjà eu ce souci et si oui comment l'a t'il résolu?
Pour nous aider, aurais-tu un bout de code VB ou un lien renvoyant dessus?
Voici l'exemple de code VBa sur lequel je me base :
Dim myOlApp As New Outlook.Application
Dim myNameSpace As Outlook.NameSpace
Dim myFolder As Outlook.MAPIFolder
Dim myDistList As Outlook.DistListItem
Dim tmpRecips As Outlook.Recipients
Set myNameSpace = myOlApp.GetNamespace("MAPI")
Set tmpRecips = myOlApp.CreateItem(olMailItem).Recipients
tmpRecips.Add myNameSpace.CurrentUser.Name
Set myFolder = myNameSpace.GetDefaultFolder(olFolderContacts)
For x = 1 To myFolder.Items.Count
If TypeName(myFolder.Items.Item(x)) = "DistListItem" Then
Set myDistList = myFolder.Items.Item(x)
For y = 1 To myDistList.MemberCount
If myDistList.GetMember(y).Name =
myNameSpace.CurrentUser.Name Then
myDistList.RemoveMembers tmpRecips
myDistList.Save
Exit For
End If
Next y
End If
Next x
Et voici le code que j'ai fait en Windev :
myOlApp est un objet OLE dynamique
myNameSpace est un objet OLE dynamique
myFolder est un objet OLE dynamique
myDistList est un objet OLE dynamique
myOlItems est un objet OLE dynamique
objFolder est un objet OLE dynamique
objItems est un objet OLE dynamique
objContacts est un objet OLE dynamique
Contacts est une chaîne
NbContacts est un entier
i,j est un entier=1
olFolderContacts est un entier
POUR i= 1 A myFolder>>Items>>Count
// *** C'est ici que je coince **** > si
TypeVar(myFolder>>Items>>Item(i)) ="DistListItem" alors //Liste de
distribution
myDistList=myFolder>>Items>>Item(i)
pour j = 1 a myDistList>>MemberCount
OlContact(myDistList>>GetMember(j),i)
FIN
sinon // Contact
OlContact(myFolder>>items(i),i)
fin
FIN
En fait, j'ai besoin de savoir si l'élément que je lit dans les
contacts est un "Contact" ou une "Liste de distribution" que je devrais
parcourir également pour aller controler les contacts s'y retrouvant
dedans.
J'ai su transposer le code mais je bloque sur le "TypeName()".
Merci pour l'aide.
--
Ceci est une signature automatique de MesNews.
Site : http://mesnews.no-ip.com
"Albert-Pierre Hache" a écrit dans le message de news:
Bonjour à tous, Je suis occupé de travail sur Outlook à partir de Windev 8 avec des objets Ole Dynamique. Jusque là pas de problème. Par contre, si je suis l'exemple donnée par MSDN pour une gestion des listes de distributions des contacts d'Outlook, je devrais utiliser une fonction VBa "TypeName()". Je ne retrouve pas une façon de faire sous Windev. Est-ce que qlq'un a déjà eu ce souci et si oui comment l'a t'il résolu?
Pour nous aider, aurais-tu un bout de code VB ou un lien renvoyant dessus?
Voici l'exemple de code VBa sur lequel je me base :
Dim myOlApp As New Outlook.Application Dim myNameSpace As Outlook.NameSpace Dim myFolder As Outlook.MAPIFolder Dim myDistList As Outlook.DistListItem Dim tmpRecips As Outlook.Recipients Set myNameSpace = myOlApp.GetNamespace("MAPI") Set tmpRecips = myOlApp.CreateItem(olMailItem).Recipients tmpRecips.Add myNameSpace.CurrentUser.Name Set myFolder = myNameSpace.GetDefaultFolder(olFolderContacts) For x = 1 To myFolder.Items.Count If TypeName(myFolder.Items.Item(x)) = "DistListItem" Then Set myDistList = myFolder.Items.Item(x) For y = 1 To myDistList.MemberCount If myDistList.GetMember(y).Name = myNameSpace.CurrentUser.Name Then myDistList.RemoveMembers tmpRecips myDistList.Save Exit For End If Next y End If Next x
Et voici le code que j'ai fait en Windev :
myOlApp est un objet OLE dynamique myNameSpace est un objet OLE dynamique myFolder est un objet OLE dynamique myDistList est un objet OLE dynamique myOlItems est un objet OLE dynamique
objFolder est un objet OLE dynamique objItems est un objet OLE dynamique objContacts est un objet OLE dynamique Contacts est une chaîne NbContacts est un entier i,j est un entier=1 olFolderContacts est un entier
POUR i= 1 A myFolder>>Items>>Count // *** C'est ici que je coince **** > si TypeVar(myFolder>>Items>>Item(i)) ="DistListItem" alors //Liste de distribution myDistList=myFolder>>Items>>Item(i) pour j = 1 a myDistList>>MemberCount OlContact(myDistList>>GetMember(j),i) FIN sinon // Contact OlContact(myFolder>>items(i),i) fin FIN
En fait, j'ai besoin de savoir si l'élément que je lit dans les contacts est un "Contact" ou une "Liste de distribution" que je devrais parcourir également pour aller controler les contacts s'y retrouvant dedans. J'ai su transposer le code mais je bloque sur le "TypeName()". Merci pour l'aide.
-- Ceci est une signature automatique de MesNews. Site : http://mesnews.no-ip.com