Evento Application.ProjectTaskNew (Project)
Ocurre cuando se crea una nueva tarea.
Sintaxis
expresión. ProjectTaskNew
( _pj_
, _ID_
)
expresión Variable que representa un objeto Application.
Parámetros
Nombre | Obligatorio/opcional | Tipo de datos | Descripción |
---|---|---|---|
pj | Obligatorio | Project | Proyecto en el que se ha creado la tarea. |
ID | Obligatorio | Long | Identificador de la tarea que se ha creado. |
Valor devuelto
Nothing
Comentarios
Puede interceptar los eventos de nivel de proyecto de VBA externa.
Ejemplo:
En el siguiente ejemplo se muestra cómo el evento ProjectTaskNew puede interceptar los eventos de nivel de proyecto. En este caso, el controlador de eventos App_ProjectTaskNew establece la variable ProjTaskNew global que usa el controlador de eventos de cambio. Use código similar con los eventos ProjectResourceNew y ProjectAssignmentNew .
- Cree un módulo de clase denominado EventClassModule y, a continuación, inserte el código siguiente:
Option Explicit
Option Base 1
Public WithEvents App As Application
Public WithEvents Proj As Project
Dim NewTaskIDs() As Integer
Dim NumNewTasks As Integer
Dim ProjTaskNew As Boolean
Private Sub App_ProjectTaskNew(ByVal pj As Project, ByVal ID As Long)
NumNewTasks = NumNewTasks + 1
If ProjTaskNew Then
ReDim Preserve NewTaskIDs(NumNewTasks) As Integer
Else
ReDim NewTaskIDs(NumNewTasks) As Integer
End If
NewTaskIDs(NumNewTasks) = ID
ProjTaskNew = True
End Sub
Private Sub Proj_Change(ByVal pj As Project)
Dim NewTaskID As Variant
If ProjTaskNew Then
For Each NewTaskID In NewTaskIDs
MsgBox "New Task Name: " & ActiveProject.Tasks.UniqueID(NewTaskID).Name
Next NewTaskID
NumNewTasks = 0
ProjTaskNew = False
End If
End Sub
- En otro módulo, inserte el código siguiente:
Option Explicit
Dim X As New EventClassModule
Sub Initialize_App()
Set X.App = MSProject.Application
Set X.Proj = Application.ActiveProject
End Sub
Ejecute el procedimiento Initialize_App para comenzar a escuchar los eventos.
Creación de una tarea. El controlador de eventos muestra un cuadro de mensaje cada vez que se agrega una nueva tarea.
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.