Compartilhar via


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

Objeto Table

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.