Zugreifen auf die Werte einer mehrwertigen Eigenschaft in einer Tabelle
Wenn einer Tabelle unter Verwendung des expliziten integrierten Namens eine mehrwertige Eigenschaft hinzugefügt wird, ist das Format der Werte der Eigenschaft im Allgemeinen eine durch Trennzeichen getrennte Zeichenfolge. Wenn die mehrwertige Eigenschaft dem Table-Objekt hinzugefügt wird, indem durch einen Namespace darauf verwiesen wird, sind die Werte der Eigenschaft als Variantenarray formatiert.
Im folgenden Codebeispiel wird die mehrwertige Categories-Eigenschaft einer Tabelle mithilfe eines Namens hinzugefügt, der auf den Namespace urn:schemas-microsoft-com:office:office#Keywords verweist. Um die Werte für die Spalte Categories für jede Zeile in der Tabelle abzurufen, weisen Sie
oRow("urn:schemas-microsoft-com:office:office#Keywords")
einer Variante zu, und listen Sie die Elemente des Variantenarrays auf. Beachten Sie, dass für ein Element, dem keine Kategorien zugewiesen wurden, einer Variante und die Elemente des Variant-Arrays aufgezählt werden. Für ein Element, dem keine Kategorien zugewiesen wurden, gibt
oRow("urn:schemas-microsoft-com:office:office#Keywords")
einen leeren Wert zurück.
Sub TableCategories()
Dim oT As Outlook.Table
Dim oRow As Outlook.Row
Dim varCat
Dim j As Integer
Dim strCategories As String
Set oT = Application.ActiveExplorer.CurrentFolder.GetTable()
oT.Columns.Add ("urn:schemas-microsoft-com:office:office#Keywords")
oT.Sort "LastModificationTime", True
Do Until oT.EndOfTable
Set oRow = oT.GetNextRow
'Obtain any values of the Categories property
varCat = oRow("urn:schemas-microsoft-com:office:office#Keywords")
If Not (IsEmpty(varCat)) Then
'Form a string out of the item's categories
For j = 0 To UBound(varCat)
strCategories = strCategories & (varCat(j)) & ", "
Next
'Remove last trailing ", "
strCategories = Left(strCategories, Len(strCategories) - 2)
Else
'The item does not have any categories
strCategories = ""
End If
Debug.Print ("Subject: " _
& oRow("Subject") & vbCrLf & "Categories: ") & strCategories & vbCrLf
Loop
End Sub
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.