Método Table.GetArray (Outlook)
Obtém uma matriz bidimensional que contém um conjunto de valores de linha e coluna da Tabela.
Sintaxe
expression. GetArray
( _MaxRows_
)
Expressão Uma variável que representa um objeto Table .
Parâmetros
Nome | Obrigatório/Opcional | Tipo de dados | Descrição |
---|---|---|---|
MaxRows | Obrigatório | Long | Especifica o número máximo de linhas a serem retornadas da Tabela. |
Valor de retorno
Um valor Variant que é uma matriz bidimensional que representa um conjunto de valores de linha e coluna da Tabela. A matriz é baseada em zero; um índice de matriz (i, j) indexa na coluna i-th e na linha j-th na matriz. As colunas na matriz correspondem a colunas na Tabela e as linhas na matriz correspondem a linhas na Tabela. O número de linhas na matriz retornada é o valor menor de MaxRows e o número real de linhas na Tabela.
Comentários
O método GetArray oferece um meio conceitualmente simples para obter valores de uma Tabela copiando todos ou parte dos dados na Tabela (com base na linha atual) para uma matriz e indexação na matriz.
GetArray sempre começa na linha atual da Tabela. Ele retorna uma matriz com o número maxrows de linhas se houver pelo menos o número maxrows de linhas na Tabela começando na posição atual. Se MaxRows não for maior que o número total de linhas na Tabela, e houver menos do que o número maxrows de elementos na Tabela começando na linha atual, ele retornará uma matriz que contém apenas as linhas restantes na Tabela. Se GetArray for chamado e não houver linhas restantes, GetArray retornará uma matriz vazia sem elementos.
Depois de obter as linhas apropriadas da Tabela e antes de retornar, GetArray sempre reposiciona a linha atual para a próxima linha na Tabela, se houver uma próxima linha. GetArray(n)
opera como se Table.GetNextRow fosse chamado n vezes.
Os valores nas colunas são mapeados para colunas na Tabela e, portanto, são determinados pelo formato do nome da propriedade usado para a coluna. Para obter mais informações, consulte Fatores que afetam a representação do valor da propriedade nas classes Tabela e Exibição.
Exemplo
O exemplo de código a seguir obtém uma Tabela filtrando todos os itens na caixa de entrada que contêm "Office" no assunto. Em seguida, ele usa o método Table.GetArray para copiar os dados da Tabela para uma matriz e imprime o valor da propriedade de cada item retornado.
Para obter mais informações sobre como especificar nomes de propriedade em um filtro por referência de namespace, consulte Referencing Properties by Namespace.
Sub DemoTableUsingGetArray()
'Declarations
Dim Filter As String
Dim i, ubRows As Long
Dim j, ubCols As Integer
Dim varArray
Dim oTable As Outlook.Table
Dim oFolder As Outlook.Folder
Const SchemaPropTag As String = _
"http://schemas.microsoft.com/mapi/proptag/"
On Error Resume Next
'Get a Folder object for the Inbox
Set oFolder = Application.Session.GetDefaultFolder(olFolderInbox)
'Filter on the subject containing "Office"
Filter = "@SQL=" & Chr(34) & SchemaPropTag & "0x0037001E" _
& Chr(34) & " like '%Office%'"
'Get all items in Inbox that meet the filter
Set oTable = oFolder.GetTable(Filter)
On Error GoTo Err_Trap
varArray = oTable.GetArray(oTable.GetRowCount)
'Number of rows is the second dimension of the array
ubRows = UBound(varArray, 2)
'Number of columns is the first dimension of the array
ubCols = UBound(varArray)
'Array is zero-based
'Rows corrspond to items in the table, so for each item...
For j = 0 To ubRows
'Columns correspond to properties in the table, print the value of each property
For i = 0 To ubCols
Debug.Print varArray(i, j)
Next
Next
Exit Sub
Err_Trap:
Debug.Print "Error#:" & Err.Number & " Desc: " & Err.Description
Resume Next
End Sub
Confira também
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.