Partager via


PropertyAccessor.GetProperties, méthode (Outlook)

Obtient les valeurs des propriétés spécifiées par le tableau unidimensionnel SchemaNames.

Syntaxe

expression. GetProperties( _SchemaNames_ )

Expression Variable qui représente un objet PropertyAccessor .

Parameters

Nom Requis/Facultatif Type de données Description
SchemaNames Requis Variant Tableau qui contient les noms des propriétés dont les valeurs doivent être renvoyées. Ces propriétés sont référencées par un espace de noms. Pour plus d’informations, voir Référencer les propriétés par un espace de noms.

Valeur renvoyée

Variant qui représente un tableau de valeurs des propriétés spécifiées dans le paramètre SchemaNames. Le nombre d’éléments contenus dans le tableau renvoyé est égal à celui du tableau SchemaNames. Si une erreur se produit lors de l’obtention d’une propriété spécifique, la valeur Err est renvoyée à l’emplacement correspondant dans le tableau renvoyé.

Remarques

Le tableau renvoyé par GetProperties peut contenir des éléments de types différents selon le type de la propriété demandée. Le type de l’élément du tableau renvoyé par GetProperties est le même que celui de la propriété sous-jacente. Certains types de propriété brute, comme PT_OBJECT, ne sont pas pris en charge et produisent une erreur. Si vous avez besoin d’une conversion du type de propriété brute, par exemple, de PT_BINARY en chaîne ou d’PT_SYSTIME en heure locale, utilisez les méthodes d’assistance PropertyAccessor.BinaryToString et PropertyAccessor.UTCToLocalTime.

Pour plus d’informations sur l’obtention de propriétés à l’aide de l’objet PropertyAccessor , consultez Meilleures pratiques pour obtenir et définir des propriétés.

Exemple

L’exemple de code suivant montre comment utiliser l’objet PropertyAccessor pour obtenir les propriétés MAPI qui ne sont pas exposées sur un élément Outlook, à savoir : PR_SUBJECT, PR_ATTR_HIDDEN, PR_ATTR_READONLY et PR_ATTR_SYSTEM. Cet exemple de code montre comment utiliser la méthode GetProperties pour extraire ces propriétés en un seul appel en spécifiant un tableau de références par espace de noms à ces propriétés et obtenir un tableau contenant la valeur brute de chaque propriété.

Sub DemoPropertyAccessorGetProperties() 
 
 Dim PropNames() As Variant 
 
 Dim myValues As Variant 
 
 Dim i As Integer 
 
 Dim j As Integer 
 
 Dim oMail As Object 
 
 Dim oPA As Outlook.PropertyAccessor 
 
 
 
 'Get first item in the inbox 
 
 Set oMail = _ 
 
 Application.Session.GetDefaultFolder(olFolderInbox).Items(1) 
 
 'PR_SUBJECT, PR_ATTR_HIDDEN, PR_ATTR_READONLY, PR_ATTR_SYSTEM 
 
 PropNames = _ 
 
 Array("http://schemas.microsoft.com/mapi/proptag/0x0037001E", _ 
 
 "http://schemas.microsoft.com/mapi/proptag/0x10F4000B", _ 
 
 "http://schemas.microsoft.com/mapi/proptag/0x10F6000B", _ 
 
 "http://schemas.microsoft.com/mapi/proptag/0x10F5000B") 
 
 'Obtain an instance of a PropertyAccessor object 
 
 Set oPA = oMail.PropertyAccessor 
 
 'Get myValues array with GetProperties call 
 
 myValues = oPA.GetProperties(PropNames) 
 
 For i = LBound(myValues) To UBound(myValues) 
 
 'Examine the type of the element 
 
 If IsError(myValues(i)) Then 
 
 'CVErr returns a variant of subtype error 
 
 Debug.Print (CVErr(myValues(i))) 
 
 ElseIf IsArray(myValues(i)) Then 
 
 propArray = myValues(i) 
 
 For j = LBound(propArray) To UBound(propArray) 
 
 Debug.Print (propArray(j)) 
 
 Next 
 
 ElseIf IsNull(myValues(i)) Then 
 
 Debug.Print ("Null value") 
 
 ElseIf IsEmpty(myValues(i)) Then 
 
 Debug.Print ("Empty value") 
 
 ElseIf IsDate(myValues(i)) Then 
 
 Debug.Print (oPA.UTCToLocalTime(myValues(i))) 
 
 'VB does not have IsBinary function 
 
 ElseIf VarType(myValues(i)) = vbByte Then 
 
 Debug.Print (oPA.BinaryToString(myValues(i))) 
 
 Else 
 
 Debug.Print (myValues(i)) 
 
 End If 
 
 Next 
 
End Sub

Voir aussi

PropertyAccessor, objet

Assistance et commentaires

Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.