Compartilhar via


Objeto de gráfico (Projeto)

O objeto Chart representa um gráfico em um relatório do Project.

Comentários

O objeto Gráfico no Project inclui os membros padrão que outras aplicações do Office implementam para o Office Art. Por exemplo, veja o objeto Gráfico no modelo de objeto VBA para Word, Excel e PowerPoint.

No Project, um gráfico é representado por um objeto Gráfico , que está contido por um objeto Forma ou uma coleção ShapeRange num objeto Relatório . Para obter um diagrama que mostra o objeto Gráfico na hierarquia de modelos de objetos do Project, veja Mapa de objetos Aplicações e Projetos.

Observação

A gravação de macros para o objeto Gráfico não está implementada. Ou seja, quando grava uma macro no Project e adiciona manualmente um gráfico, adiciona elementos de gráfico ou formate manualmente um gráfico num relatório, os passos para adicionar e manipular o gráfico não são registados.

Utilize o método Shapes.AddChart para adicionar um gráfico a um relatório. Para determinar se uma Forma ou um ShapeRange contém um gráfico, utilize o método HasChart .

O objeto Gráfico no Project não implementa eventos. Assim, um gráfico no Project não pode ser animado para interagir com eventos do rato ou responder a eventos como Selecionar ou Calcular, tal como no Excel.

Exemplo

O exemplo seguinte cria um gráfico escalar simples para tarefas no projeto ativo. O gráfico mostra os campos predefinidos Trabalho Real, Trabalho Restante e Trabalho .

Para criar alguns dados de exemplo, adicione quatro tarefas a um novo projeto, atribua recursos locais a essas tarefas e defina vários valores de duração e trabalho real. Por exemplo, experimente os valores na Tabela 1.

Tabela 1. Dados de exemplo para um gráfico simples

Nome da tarefa Duration Trabalho real
T1 2d 16
T2 5d 19
T3 4d 7
T4 2d 0
Sub AddSimpleScalarChart()
    Dim chartReport As Report
    Dim reportName As String
    
    ' Add a report.
    reportName = "Simple scalar chart"
    Set chartReport = ActiveProject.Reports.Add(reportName)

    ' Add a chart.
    Dim chartShape As Shape
    Set chartShape = ActiveProject.Reports(reportName).Shapes.AddChart()
    
    chartShape.Chart.SetElement (msoElementChartTitleCenteredOverlay)
    chartShape.Chart.ChartTitle.Text = "Sample Chart for the Test1 project"
End Sub

Quando executa a macro AddSimpleScalarChart , o Project cria o relatório e adiciona um gráfico. O gráfico tem funcionalidades predefinidas, exceto se o título for especificado pela propriedade SetElement a ser sobreposto no gráfico, em vez da posição predefinida acima do gráfico.

Figura 1. O gráfico mostra os dados na Tabela 1

Gráfico escalar simples num relatório Para eliminar o gráfico, pode eliminar a forma que contém o gráfico. A seguinte macro elimina o gráfico no relatório criado pela macro AddSimpleScalarChart e deixa o relatório vazio como a vista ativa.

Sub DeleteTheShape()
    Dim i As Integer
    Dim reportName As String
    Dim theShape As MSProject.Shape
    
    reportName = "Simple scalar chart"
        
    For i = 1 To ActiveProject.Reports.Count
        If ActiveProject.Reports(i).Name = reportName Then
            Set theShape = ActiveProject.Reports(i).Shapes(1)
            theShape.Delete
        End If
    Next i
End Sub

Para eliminar o relatório, aceda a uma vista diferente e, em seguida, abra a caixa de diálogo Organizador . Não é possível eliminar um relatório enquanto o relatório estiver ativo. O Organizador está disponível no separador PROGRAMADOR do friso e também no separador ESTRUTURA , no grupo Relatório , no menu Gerir . No separador Relatórios da caixa de diálogo Organizador , selecione Gráfico escalar simples no painel do projeto e, em seguida, selecione Eliminar. Em alternativa, execute a seguinte macro para eliminar o relatório.

Sub DeleteTheReport()
    Dim i As Integer
    Dim reportName As String
    
    reportName = "Simple scalar chart"

    ' To delete the active report, change to another view.
    ViewApplyEx Name:="&Gantt Chart"
    
    ActiveProject.Reports(reportName).Delete
End Sub

Métodos

Nome
ApplyChartTemplate
ApplyCustomType
ApplyDataLabels
ApplyLayout
AutoFormat
Axes
ChartWizard
ClearToMatchColorStyle
ClearToMatchStyle
Copy
CopyPicture
Delete
Export
GetChartElement
Refresh
RefreshPivotTable
SaveChartTemplate
Select
SeriesCollection
SetDefaultChart
SetElement
SetSourceData
UpdateChartData

Propriedades

Nome
Aplicativo
AutoScaling
BackWall
BarShape
ChartArea
ChartColor
ChartData
ChartGroups
ChartStyle
ChartTitle
ChartType
Creator
DataTable
DepthPercent
DisplayBlanksAs
Elevation
Floor
Formato
GapDepth
HasAxis
HasDataTable
HasLegend
HasTitle
HeightPercent
Legend
Responsável
Perspective
PivotLayout
PlotArea
PlotBy
PlotVisibleOnly
RightAngleAxes
Rotation
Shapes
ShowAllFieldButtons
ShowAxisFieldButtons
ShowDataLabelsOverMaximum
ShowLegendFieldButtons
ShowReportFilterFieldButtons
ShowValueFieldButtons
SideWall
Walls

Confira também

Objeto Shape

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.