Freigeben über


PropertyAccessor.GetProperties-Methode (Outlook)

Die Werte der durch das eindimensionale Array SchemaNames angegebenen Eigenschaften werden abgerufen.

Syntax

Ausdruck. GetProperties( _SchemaNames_ )

Ausdruck Eine Variable, die ein PropertyAccessor-Objekt darstellt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
SchemaNames Erforderlich Variant Ein Array, das die Namen der Eigenschaften enthält, deren Werte zurückgegeben werden sollen. Auf diese Eigenschaften wird mithilfe von Namespaces verwiesen. Weitere Informationen finden Sie unter Verweisen auf Eigenschaften mithilfe von Namespaces.

Rückgabewert

Ein Variant-Wert, der ein Array von Werten der im Parameter SchemaNames angegebenen Eigenschaften darstellt. Die Anzahl der Elemente im zurückgegebenen Array entspricht der Anzahl der Elemente im SchemaNames-Array . Wenn ein Fehler, zum Abrufen einer bestimmten Eigenschaft auftritt, wird der Err -Wert in der entsprechenden Stelle im zurückgegebenen Array zurückgegeben werden.

HinwBemerkungeneise

Das von GetProperties zurückgegebene Array kann mit unterschiedlichen Typen, je nach Art der angeforderten Eigenschaft Elemente enthalten. Der Typ des GetProperties zurückgegebene Array-Elements wird der Typ der zugrunde liegenden-Eigenschaft identisch sein. Bestimmte unformatierte Eigenschaftstypen wie PT_OBJECT werden nicht unterstützt und löst einen Fehler. Wenn Sie eine Konvertierung des unformatierten Eigenschaftstyps benötigen, z. B. von PT_BINARY in eine Zeichenfolge oder von PT_SYSTIME in eine Ortszeit, verwenden Sie die Hilfsmethoden PropertyAccessor.BinaryToString und PropertyAccessor.UTCToLocalTime.

Weitere Informationen zum Abrufen von Eigenschaften mithilfe des PropertyAccessor-Objekts finden Sie unter Bewährte Methoden zum Abrufen und Festlegen von Eigenschaften.

Beispiel

Das folgende Codebeispiel zeigt, wie das PropertyAccessor -Objekt verwenden, um MAPI-Eigenschaften abzurufen, die nicht für ein Outlook-Element, nämlich verfügbar gemacht werden: PR_SUBJECT, PR_ATTR_HIDDEN, PR_ATTR_READONLY und PR_ATTR_SYSTEM. In diesem Codebeispiel GetProperties -Methode verwendet, um diese in einem einzigen Aufruf, der ein Array von Namespaceverweise auf diese Eigenschaften angeben abzurufen und ruft ein zurückgegebene Array, das den unformatierten Wert für jede Eigenschaft enthält.

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

Siehe auch

PropertyAccessor-Objekt

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.