Metodo del PDM en excel (precedencias)

pieroap21

New Member
Joined
Mar 22, 2013
Messages
8
Hola a todos un saludo cordial y agradesco de antemano su respuesta.

En las tablas que se muestran a continuacion tengo actividades de la tabla de la derecha de (inmediatamente sucesoras) las cuales quiero ubicar en la tabla de la izquierda (inmediatamente predecesoras) si en el rango de la actividad "A" h
asta la "H" se repite 2 veces en la tabla izquierda entonces en la tabla derecha a la altura de sucesora 2 me coloque la actividad en la cual a sido precedida por segunda vez (la actividad de la 1ra. columna) : por ejemplo:
En la tabla de la derecha las actividades A y B estan repetidas 2 veces entoces:
con la A la primera vez que se repite en sucesora 1 le corresponde el valor de B y en sucesora 2 le corresponde la actividad E
con la B la primera vez que se repite en sucesora 1 le corresponde el valor de C y en sucesora 2 le corresponde la actividad D
con la D la primera vez que se repite en sucesora 1 le corresponde el valor de G y en sucesora 2 le corresponde la actividad C

para lograr esto lo que he tratado de hacer es lo siguiente:
1ro. identifique cuales se repiten 2 veces en la tabla de la izquierda
2do. desde el primer elemento repetido quiero que se desplace desde el rango de ese elemento un rango mas abajo

el problema es que no encuento como hacerlo porque me vota error ayudenme porfavor.
la formula que use fue esta y no me funciona colocada en la primera actividad en sucesora 2:
=indirecto("A"&COINCIDIR(M8,INDIRECTO(DIRECCION(8+COINCIDIR(M8,$C$8:$C$15,FALSO),3)&":"&DIRECCION(15,6)),FALSO))

** La primera actividad de la primera columna comienza en la fila 8


Data
Inmediatamente predecesora(1 por columna)DataInmediatamente Sucesora(1 por columna)
ActivdadTiempoPred 1Pred 2ActivdadTiempoSucesora 1Sucesora 2
A7 H1
B6AFC2 G3H 2
C6BCC4DFF2F1H 41
D6BCF8 E8F 81
E8ACC12CFF8D6G 122 8
F1EFC2 C6E 2
G3DFC2 B6C 22
H1FFF1GFF3A7B 12 3

<colgroup><col><col span="5"><col><col span="2"><col><col><col><col><col><col><col><col><col span="3"></colgroup><tbody>
</tbody>
 

Excel Facts

Test for Multiple Conditions in IF?
Use AND(test, test, test, test) or OR(test, test, test, ...) as the logical_test argument of IF.
Estaría mas claro si hubiéramos la referencia de columnas, se establece que la celda con "Data" es la 6 pero no dice cual es la columna
Si "Data" esta en la columna A, al copiar a una hoja la M8 me da vacía, por eso puede ser el error N/A
Sergio
 
Upvote 0
Tengo que ir al cine y mi mujer me esta mirando raro, lo que tengo hasta ahora es una nueva formula en mi planilla la palabra "Data" esta en la celda D6
Para Sucesora 1 tengo: =SI(SUMAPRODUCTO(--($F$8:$I$15=$M8))>0;SI.ERROR(INDICE($D$8:$F$15;COINCIDIR($M8;$F$8:$F$15;0);1);INDICE($D$8:$I$15;COINCIDIR($M8;$I$8:$I$15;0);1));"")
Para sucesora 2 tengo como determinar que hay una sucesora 2 pero no lo he resuleto tengo hasta ahora: =SI(SUMAPRODUCTO(--($F$9:$I$15=$M12))>1;"hay sucesora dos";"")
Mañana veo si lo resuelvo
Saludos
Sergio
 
Upvote 0
Lo que quiero es usar el principio de la funcion coincidir la cual me devulve el numero de la fila del valor buscado pero no quiero que me devuelva el primer elemento encontrado del valor buscado sino el segundo elemento encontrado y asi sucesivamente si hubieran mas elementos repetidos, y agradesco su respuesta

Adjunto el archivo para descargar, ahi esta mejor explicado el problema:
download - filecloud.io
 
Last edited:
Upvote 0
Re: descarga del archivo problema

Correccion del enlace de descarga el anterior no funciona este si

Adjunto el archivo para descargar, ahi esta mejor explicado el problema:

download - filecloud.io
 
Last edited:
Upvote 0
Re: descarga del archivo problema

Estimado Piero,
Esta formula funciona para la Sucesora 2, como las predecesoras no son normales en el sentido de Boyce–Codd calcular una tercera sucesora requiere otro SI(SUMAPRODUCTO()=3;...) haciendo la formula muy larga, mi consejo es normalizar las predecesoras, es decir una tabla para tareas y otra tabla para la relación entre tarea y predecesora, ver abajo el ejemplo.

Formula en R8
Code:
=SI(SUMAPRODUCTO(--($C$9:$F$15=$M8))>1;SI(SUMAPRODUCTO(--($C$9:$C$15=$M8))=0;INDICE(INDIRECTO("$A$"&8+COINCIDIR($M8;$F$8:$F$15;0)&":$A$15");COINCIDIR(M8;INDIRECTO("$F$"&8+COINCIDIR($M8;$F$8:$F$15;0)&":$F$15");0));SI(SUMAPRODUCTO(--($C$9:$C$15=$M8))=1;INDICE($A$8:$F$15;COINCIDIR($M8;$F$8:$F$15;0);1);INDICE(INDIRECTO("$A$"&8+COINCIDIR($M8;$C$8:$C$15;0)&":$A$15");COINCIDIR(M8;INDIRECTO("$C$"&8+COINCIDIR($M8;$C$8:$C$15;0)&":$C$15");0))));"")


La hoja con las formulas se puede bajar del link https://dl.dropbox.com/u/23094164/Copia de PRECEDENCIAS.xlsx

Explicación o ejemplo de como normalizar las tablas
Code:
Tabla Tareas
Tarea  Datos tarea
A      ...
B      ...
C      ...
D      ...

Tabla Relación
Tarea  Predecesora
A
B      A
D      B
C      B
C      D
E      C
E      A
...

Saludos
Sergio
 
Upvote 0
Re: descarga del archivo problema

Muy agradecido don Sergio es justo lo que quieria y voy intentar hacer la normalizacion sino limitare a 4 predecesoras y/o sucesoras identificadas como:
predecesora, inmediatamente predecesora, inmediatamente sucesora, sucesora en la red PDM estoy simulando un sistema de MS Project.

Arrivederci :D
 
Upvote 0
Re: descarga del archivo problema

Un gusto que te sirviera la formula, y ayudarte. Si tienes el tiempo puedes ir a mi blog y cliquear (varias veces) sobre la publicidad, el link a mi blog esta en la firma. Saludos y suerte con la normalización.
Sergio
 
Upvote 0

Forum statistics

Threads
1,215,248
Messages
6,123,877
Members
449,130
Latest member
lolasmith

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top