Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El objeto Chart representa un gráfico en un informe de Project.
Comentarios
El objeto Chart de Project incluye los miembros estándar que otras aplicaciones de Office implementan para Office Art. Por ejemplo, vea el objeto Chart en el modelo de objetos vba para Word, Excel y PowerPoint.
En Project, un gráfico se representa mediante un objeto Chart , que está contenido en un objeto Shape o una colección ShapeRange en un objeto Report . Para ver un diagrama que muestra el objeto Chart en la jerarquía del modelo de objetos de Project, vea Asignación de objetos Application y Projects.
Nota:
No se implementa la grabación de macros para el objeto Chart . Es decir, al grabar una macro en Project y agregar manualmente un gráfico, agregar elementos de gráfico o dar formato manualmente a un gráfico en un informe, no se registran los pasos para agregar y manipular el gráfico.
Use el método Shapes.AddChart para agregar un gráfico a un informe. Para determinar si una shape o un ShapeRange contiene un gráfico, use el método HasChart .
El objeto Chart de Project no implementa eventos. Por lo tanto, un gráfico de Project no se puede animar para interactuar con eventos del mouse ni responder a eventos como Seleccionar o Calcular, como puede hacer en Excel.
Ejemplo:
En el ejemplo siguiente se crea un gráfico escalar simple para las tareas del proyecto activo. En el gráfico se muestran los campos Trabajo real, Trabajo restante y Trabajo predeterminado.
Para crear algunos datos de ejemplo, agregue cuatro tareas a un nuevo proyecto, asigne recursos locales a esas tareas y establezca varios valores de duración y trabajo real. Por ejemplo, pruebe los valores de la tabla 1.
Tabla 1. Datos de ejemplo para un gráfico simple
Nombre de tarea | Duración | Trabajo 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
Al ejecutar la macro AddSimpleScalarChart , Project crea el informe y agrega un gráfico. El gráfico tiene características predeterminadas, excepto que la propiedad SetElement especifica el título que se va a superponer en el gráfico, en lugar de la posición predeterminada encima del gráfico.
Figura 1. El gráfico muestra los datos de la tabla 1
Para eliminar el gráfico, puede eliminar la forma que contiene el gráfico. La siguiente macro elimina el gráfico del informe creado por la macro AddSimpleScalarChart y deja el informe vacío como la vista activa.
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 el informe, vaya a una vista diferente y, a continuación, abra el cuadro de diálogo Organizador . No se puede eliminar un informe mientras el informe está activo. El organizador está disponible en la pestaña DESARROLLADOR de la cinta de opciones y también en la pestaña DISEÑO, en el grupo Informe, en el menú Administrar. En la pestaña Informes del cuadro de diálogo Organizador , seleccione Gráfico escalar simple en el panel del proyecto y, a continuación, elija Eliminar. Como alternativa, ejecute la siguiente macro para eliminar el informe.
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
Propiedades
Vea también
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.