¡Bienvenido! al foro de consultas y comentarios de Ms Project

Envía a imartin@epmconsultores.com o a través de mi perfil tus consultas sobre Microsoft Project, Professional, Server, etc ... o bien añade respuestas y comentarios a los temas ya publicados. Ignacio Martín
http://www.epmconsultores.com/cursomicrosoftproject2013.html
http://www.epmconsultores.com/cursomsproject2013.html
http://www.epmconsultores.com/cursodeproject.html

01 enero 2011

Proyección nueva fecha de fin (II) / Fórmulas



Estimado Ignacio.

¿Cómo puedo hacer a través de una fórmula que me muestre la nueva fecha de Fin, si en lugar de un 30% de Trabajo Completado tengo un 10%, el cual significa un 20% de atraso? Abusando de tu paciencia, también quisiera expresar lo mismo pero con horas de trabajo.


Saludos.

Veronika.


Respuesta [Ignacio Martín]:

Hola Veronika.

Empezando por la última pregunta, Project supone que aunque una tarea se retrase en su fecha de fin, no tiene porque variar las horas de trabajo inicialmente estimadas para llevarla a cabo, es decir que no tienes por qué calcular "a priori" una nueva estimación proyectada del esfuerzo (Trabajo) de la tarea aunque se haya retrasado.

En la imagen superior se muestra los diferentes estados en los que se puede encontrar una tarea en el proyecto respecto la fecha de seguimiento (Fecha de estado en Project), y que se ha representado en el Gantt como una línea roja vertical (Formato/ Cuadrícula).

Puedes insertar 2 columnas de campos personalizados, Fecha1 y Fecha2 por ejemplo, en tu tabla de tareas, titulándolos "Fin proyectado" y "Fin proyectado según realizado" respectivamente. En el segundo campo se multiplicará la duración restante de la tarea, por un factor corrector que relaciona la Duración del tiempo transcurrido desde el Comienzo real de la tarea a la fecha de seguimiento (Fecha de estado), con la Duración real (%completado).

Las Fórmulas correspondientes a estas dos columnas que se introducen a través de la opción Campos personalizados, y que puedes copiar desde aquí, y pegar en la definición de la fórmula en Project, son las siguientes:

Fin proyectado (Fecha1):

IIf(([% completado]>0 And [% completado]<100) Or ([% completado]=0 And [Comienzo]<[Fecha de estado]);ProjDateAdd([Fecha de estado];[Duración restante];[Calendario del proyecto]);[Fin])



Nota.- Al aplicar esta fórmula se obtienen las mismas fechas de fin que si se utilizara la opción de seguimiento de Project Reprogramar trabajo retrasado a partir de la Fecha de estado, pero sin considerar la lógica de precedencias en cuanto a las predecesoras o sucesoras que pudieran aceptarle, y que en este ejemplo no existen.


Fin proyectado según realizado (Fecha2):

IIf(([% completado]>0 And [% completado]<100) Or ([% completado]=0 And [Comienzo]<[Fecha de estado]);ProjDateAdd([Fecha de estado];[Duración restante]*(IIf([% completado]>0 And [% completado]<100;ProjDateDiff([Comienzo];[Fecha de estado];[Calendario del proyecto])/Val([Duración real]);1));[Calendario del proyecto]);[Fin])

Importante: Es necesario escribir la Fecha de estado en la que se ha hecho el seguimiento del proyecto, en Menú/ Proyecto/ Información del proyecto. De lo contrario el cáculo de las fechas proyectadas será erróneo.

Espero te sirva y Feliz 2011 para todos

22 comentarios:

  1. Hola,

    que significa el ProjDateAdd

    Gracias!

    Jose Galúe

    ResponderEliminar
  2. Hola Jose:

    ProjDateAdd, es parte de una función de Microsoft Project que sirve para calcular fechas, de manera que a partir de una fecha (fecha de estado en el ejemplo de más abajo, añada una duración (duración restante) que contada en un calendario (porque puede haber festivos de por medio)(Calendario del proyecto) se obtiene una nueva fecha que se asigna a otra que ya teníamos (Fin). De manera similar es lo que se ha programado en la siguiente función:

    ProjDateAdd([Fecha de estado];[Duración restante];[Calendario del proyecto]);[Fin])

    Espero habértelo aclarado.

    Un saludo

    ResponderEliminar
  3. Buenas tardes
    Qué significa la función ProjDateDiff?. En la página de microsoft hay una definición pero no es clara, me podrían colaborar por favor?.

    Muchas gracias

    ResponderEliminar
  4. Hola:

    ProjDateDiff, es parte de una función de Microsoft Project que sirve para calcular los días laborables que hay entre 2 fechas contado en un calendario especificado, por defecto el calendario del proyecto. En el siguiente ejemplo se devolverá el número de días laborables que hay entre la Fecha de estado del proyecto y la de comienzo de la tarea contado en el calendario del proyecto:

    ProjDateDiff([Comienzo];[Fecha de estado];[Calendario del proyecto])

    Espero habértelo aclarado.

    Un saludo

    ResponderEliminar
  5. Mil gracias por la respuesta...

    ResponderEliminar
  6. He intentado pegar la formula pero me marca error, a q se debe? me dice que el campo no es reconocido

    ResponderEliminar
  7. Ignacio MVP28 octubre, 2011

    ¿Qué versión e idioma de Ms Project utilizas?
    ¿Has introducido una Fecha de estado?
    Si te sigue dando error prueba a sustituir en la fórmula los 4 punto y coma (;) por coma (,). En algunas versiones de Project sólo admiten el separador (,) en lugar del (;).

    Un saludo

    ResponderEliminar
  8. Tengo una tarea del almacén de duración de 2 días, la cual tiene asignado el recurso Bodega y sus fechas están calendarizadas por el propio calendario del recurso, donde el último día hábil del mes se cierra por inventario. ¿Existe la forma para lograr que, de coincidir la fecha del desarrollo de la tarea con el inventario, esta se me desplace hacia atrás en vez de hacia adelante como lo está haciendo?

    ResponderEliminar
  9. Hola, puse en practica estas formulas para calcular el Fin Proyectado de Un Programa Maestro con varios sub proyectos vinculados. Solamente me calcula la fecha fin proyectada según el atraso del Programa para las Actividades Macro, no para las tareas, esto es correcto o existe algún error en el Project de parametrización ?

    ResponderEliminar
  10. Ignacio MVP13 marzo, 2012

    Hola,

    a) La fórmula debe tener marcado para el Cálculo de las filas resumen...Resumen y Máxima

    a) Debes incluir la fórmula en todos los proyectos, incluido el Maestro.

    Saludos

    ResponderEliminar
  11. Ignacio, muchas gracias por tus aportes....disulpa pero fijate que yo necesito una formula para nueva finalizacion por atrasos pero que se pueda considerar la lógica de precedencias en cuanto a las predecesoras o sucesoras que pudieran aceptarle....gracias!

    ResponderEliminar
  12. Ignacio MVP29 marzo, 2013

    Hola Humberto,

    la fórmula anterior es simplemente para calcular una proyección de la nueva fecha de fin en la tarea, pero sin tener en cuenta el impacto que esto puede tener en el resto del proyecto.

    No es fácil por no decir casi imposible obtener esos resultados mediante fórmulas personalizadas de manera sencilla y directa. Evidentemente Project si lo hace cuando introducimos esa información en el campo correspondiente de avance (% completado), luego una alternativa algo artesanal pero válida y precisa para hacer la simulación podría ser esta:

    1. Nos aseguramos que se ha incluido la Fecha de estado o revisión del proyecto (fecha de corte en Información del proyecto).

    2. Insertamos en la tabla de tareas, una columna de un campo personalizado como Texto3 por ejemplo, y allí escribimos los % completados ficticios para la simulación, basta con escribir el número. A este campo se le puede cambiar el nombre, como por ejemplo % completado simulado.

    3. Hacemos lo mismo insertando otra columna en la misma tabla de tareas, con el campo personalizado Fecha3, o Fecha2(sin fórmula) o el que queramos, pues va a ser la nueva fecha proyectada de fin de la tarea que calcula Project al considerar el % completado simulado. Se la podría renombrar como Fin simulado por ejemplo.

    4. Creamos una copia del archivo del proyecto para hacer la simulación con la opción de Guardar como...que descartaremos posteriormente.

    5. Sobre el nuevo archivo de simulación, copiamos los valores de la columna % completado simulado ¡que no estén en blanco! en la de % completado (usar un filtro por ejemplo, o tecla Ctr para copiar varias y pegar, ...), con lo que ya tenemos nuevas fechas de fin de todo el proyecto, incluido las relaciones entre tareas.

    6. Si queremos conocer las nuevas fechas reprogramadas debido a posibles retrasos de trabajos no efectuados podemos pulsar la opción ficha Proyecto > grupo Estado > botón Actualizar proyecto > Reprogramar trabajo restante para que empiece después de ... Al Aceptar las tareas estarán reprogramadas a la Fecha de estado y dispondremos de las nuevas fechas de Fin simulado con gran precisión.

    7. Copiar la columna de Fin del proyecto de simulación en el proyecto original.

    Espero te sea de utilidad.

    ResponderEliminar
  13. No me funciona la Formula 2 y me sale error en la función ProjDateDiff

    ResponderEliminar
  14. Hola,

    he revisado y puesto en práctica la fórmula 2 con Project 2013 y también funciona. Te recomiendo copiar y pegar la fórmula para evitar incidencias.

    ¿Qué versión utilizas? ¿Qué idioma? Puedes enviarme el fichero si quieres y te lo miro.

    Saludos

    ResponderEliminar
  15. Mi correo es el que aparece al principio de la página:

    imartin@epmconsultores.com

    Saludos

    ResponderEliminar
    Respuestas
    1. Tengo el mismo problema no me funciona la formula 2, y sale error por ProjDateDiff

      Eliminar
  16. gracias me funciono la formula cambiándole ; por ,.

    una duda: tengo mi lena base guardada, es posible que en gantt de seguimiento las barras me indiquen la fecha proyectada?

    ResponderEliminar
  17. Hola Ignacio:



    Gusto en saludarte.



    He visto tu foro y me parece muy buenas tus sugerencias.



    Quería saber si me podías ayudar con unas formulas para hacer un semáforo que muestre las tareas atrasadas, así hayan sido completadas.



    Es decir, si la tarea empezó tarde y ya culminó, que se coloque de color rojo...

    unas

    Cuando tenga 15 días antes de la fecha de LB, que se muestre en amarillo.



    y que muestre las tareas verde que tengan su LB Inicio más de 16 días.



    He tratado de colocar algunas formulas pero no me salen.



    De antemano muchas gracias

    ResponderEliminar
  18. tendrán la fórmula en inglés? gracias

    ResponderEliminar
  19. Ignacio, gracias por compartir.

    Trabajo con MS Project Professional 2013 en español, me estaba sacando un error con la fórmula de Fin proyectado según realizado (Fecha2), pero le corregí unos paréntesis que faltaban en los IIF y aquí la dejo funcionando para otros:

    IIf((([% completado]>0 And [% completado]<100) Or ([% completado]=0 And [Comienzo]<[Fecha de estado])),ProjDateAdd([Fecha de estado],[Duración restante]*(IIf(([% completado]>0 And [% completado]<100),ProjDateDiff([Comienzo],[Fecha de estado],[Calendario del proyecto]/Val([Duración real])),1)),[Calendario del proyecto]),[Fin])

    ResponderEliminar
  20. Buenas tardes Sr. Ignacio
    Tengo un proyecto con varios subproyectos, quiero que por me indique como de realizar un informe visual de las actividades programadas, ejecutadas y proyectadas. Quedo atenta a su valiosa colaboración.

    ResponderEliminar

Introduce aquí tu comentario;