Доступ к значениям свойства с несколькими значениями в таблице
Как правило, если многозначное свойство добавляется в таблицу с использованием явного встроенного имени, формат значений свойства представляет собой строку с разделителями-запятыми. Если многозначное свойство добавляется в таблицу с помощью ссылки по пространству имен, формат значений свойства представляет собой массив variant.
Следующий пример кода добавляет многозначное свойство Categories в таблицу , используя имя, которое ссылается на его пространство имен urn:schemas-microsoft-com:office:office#Keywords. Чтобы получить значения столбца Категории для каждой строки в таблице, назначьте
oRow("urn:schemas-microsoft-com:office:office#Keywords")
в переменную и перечислите элементы массива variant. Обратите внимание, что для элемента, которому не назначены какие-либо категории, в вариант и перечислите элементы массива variant. Обратите внимание, что для элемента, которому не назначены какие-либо категории,
oRow("urn:schemas-microsoft-com:office:office#Keywords")
возвращает пустое значение.
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
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.