Shapes.AddTable method (Project) (Método Shapes.AddTable [Projeto])

Adiciona uma tabela ao relatório e devolve um objeto Forma que representa a tabela.

Sintaxe

expression. AddTable(NumRows,NumColumns,Left,Top,Width,Height)

expressão Uma variável que representa um objeto Formas.

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
NumRows Obrigatório Long O número de linhas na tabela. NumRows é ignorado ao criar uma tabela.
NumColumns Obrigatório Long O número de colunas na tabela. NumColumns é ignorado ao criar uma tabela.
Left Obrigatório Single O limite esquerdo (em pontos) da tabela, em relação ao lado esquerdo do painel de relatórios.
Top Obrigatório Single A margem superior (em pontos) da tabela, relativamente à parte superior do painel de relatórios.
Width Obrigatório Single A largura da tabela, em pontos.
Height Obrigatório Single A altura da tabela, em pontos.
NumRows Obrigatório INT
NumColumns Obrigatório INT
Left Obrigatório FLOAT
Top Obrigatório FLOAT
Width Obrigatório FLOAT
Height Obrigatório FLOAT
Nome Obrigatório/Opcional Tipo de dados Descrição

Valor de retorno

Formato

Comentários

O Project ignora NumRows e NumColumns quando o método AddTable cria uma tabela. Quando uma tabela é criada, tem uma linha e uma coluna, que contém o texto Utilizar o painel de tarefas Dados da Tabela para criar uma tabela (consulte a Figura 1). Quando seleciona a tabela, o Project mostra o painel de tarefas de dados da tabela denominado Lista de Campos, com TAREFAS selecionadas por predefinição. Com o painel de tarefas Lista de Campos , pode adicionar manualmente campos ao relatório.

Figura 1. O método AddTable cria uma tabela com uma linha e uma coluna

Using the AddTable method

Exemplo

A macro TestReportTable cria a tabela apresentada na Figura 1 e, em seguida, seleciona a tabela para apresentar o painel de tarefas Dados da Tabela .

Sub TestReportTable()
    Dim theReport As Report
    Dim tableShape As shape
    Dim theReportTable As ReportTable
    Dim reportName As String
    Dim tableName As String
    Dim rows As Integer
    Dim columns As Integer
    Dim left As Integer
    Dim top As Integer
    Dim width As Integer
    Dim height As Integer
    
    reportName = "Table Report"
    Set theReport = ActiveProject.Reports.Add(reportName)
    
     ' Add the table.
    tableName = "Task information"
    rows = 0
    columns = 0
    left = 0
    top = 30
    width = 110
    height = 20
       
    ' Project ignores the NumRows and NumColumns parameters when
    ' creating a ReportTable.
    Set tableShape = theReport.Shapes.AddTable(rows, columns, _
                        left, top, width, height)
    
    tableShape.Name = tableName
    tableShape.Select
    Set theReportTable = tableShape.Table
    
    With theReportTable
        Debug.Print "Rows: " & .RowsCount
        Debug.Print "Columns: " & .ColumnsCount
        Debug.Print "Cell 1,1 contents:" & vbCrLf & vbTab; .GetCellText(1, 1)
    End With
End Sub

Para especificar campos para a tabela, utilize o método UpdateTableData . Adicione o seguinte código após a Set theReportTable = tableShape.Table linha na macro anterior. O parâmetro OutlineLevel especifica tarefas de nível 1 e filtra a tarefa de resumo do projeto.

    ' Set fields for the table.
    Dim fieldArray(1 To 6) As PjField
        
    fieldArray(1) = pjTaskName
    fieldArray(2) = pjTaskStart
    fieldArray(3) = pjTaskFinish
    fieldArray(4) = pjTaskPercentComplete
    fieldArray(5) = pjTaskActualCost
    fieldArray(6) = pjTaskRemainingCost
        
    theReportTable.UpdateTableData Task:=True, OutlineLevel:=1, SafeArrayOfPjField:=fieldArray

Execute a macro TestReportTable modificada num projeto que tenha quatro tarefas com vários valores para a percentagem concluída e os custos dos recursos. A Figura 2 é um exemplo dos resultados da tabela.

Figura 2. O método UpdateTableData pode adicionar campos a uma tabela

Updating a table with the UpdateTableData method

Confira também

Método Shapes ObjectShape ObjectApplication.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.