Compartir a través de


Evento Application.ProjectBeforeAssignmentChange (Project)

Se produce antes de que el usuario cambie el valor de un campo de asignación.

Sintaxis

expresión. ProjectBeforeAssignmentChange( _asg_, _Field_, _NewVal_, _Cancel_ )

expresión Variable que representa un objeto Application.

Parámetros

Nombre Obligatorio/opcional Tipo de datos Descripción
asg Obligatorio Assignment Asignación cuyo campo se va a cambiar.
Field Obligatorio PjAssignmentField El campo que se está cambiando. Si el usuario cambia más de un campo, el evento se desencadena para cada campo cambiado. Puede ser una de las siguientes constantes de PjAssignmentField.
NewVal Obligatorio Variant El nuevo valor para el campo especificado por Field.
Cancel Obligatorio Boolean False cuando se produce el evento. Si el procedimiento de evento establece este argumento en True, no se cambia el valor del campo especificado por Field.

Comentarios

Los eventos de proyecto no se producen cuando el proyecto está incrustado en otro documento o aplicación.

El evento ProjectBeforeAssignmentChange no se produce cuando cambian los datos de escala temporal, cuando se pega una fila completa de recursos o de tareas, cuando una asignación se cambia como resultado de una operación de arrastrar y colocar en la vista Uso de recursos, durante las operaciones del fondo de recursos, cuando se inserta o se quita un subproyecto, o cuando se han efectuado cambios mediante un formulario personalizado. Para obtener más información, vea el tema sobre el uso de eventos con los objetos Application y Project.

Ejemplo:

En el siguiente ejemplo examina las nuevas asignaciones de recursos y las cancela si son para el recurso especificado. En este ejemplo se requiere un nuevo módulo de clase y código adicional para que surta efecto.

Private Sub App_ProjectBeforeAssignmentChange(ByVal asg As Assignment, ByVal Field As PjAssignmentField, _ 
    ByVal NewVal As Variant, Cancel As Boolean) 
 
    If Field = pjAssignmentResourceName And NewVal = "Lisa Jones" Then 
        MsgBox "Lisa is no longer available for assignment!" 
        Cancel = True 
    End If 
End Sub

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.