Notifications
Clear all

Formula Data Início, Data Término, Mod

3 Posts
2 Usuários
0 Reactions
833 Visualizações
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Olá pessoal mais uma desafio para os mestres do Excel, ou não, :lol: , estou com problema para conseguir o resultado esperado, conforme explicação abaixo.
Funcionamento esperado; Campos Obrigatórios:
1.0 passo - Devemos numerar em sequencial as linhas das tarefas (coluna A);
2.0 passo - Devemos colocar o nome da equipe que executará a tarefa (coluna G);
3.0 passo - Devemos colocar a duração da execução da tarefa em horas (coluna H);
4.0 passo - Devemos colocar na primeira tarefa de cada equipe no campo predecessora, o número zero (0) para que a formula busque a data de início do projeto (coluna K);
4.1 passo - Caso tenha várias tarefas para uma equipe devemos colocar no campo predecessora os números das linhas cadastradas no 1º passo.

Colocando corretamente todos os passos anteriores, temos formulas nos campos Data Início planejada (coluna I) e na Data Término planejada (coluna K), onde buscas as datas e calcula a data de trabalho. Estou com dois problemas para que o objetivo da planilha seja concluído, que seriam as seguintes lógicas:

1º Problema: Minha jornada de trabalho é de 8 hora/dia, sendo assim no exemplo da planilha na primeira tarefa, tendo a duração de 9 horas e iniciando no dia 20/11/17 o término é na data do dia 21/11/17 até aí está correto, isto é, 8 horas do dia 20/11/17 e busca mais 1 hora do dia 21/11/17 restando 7 horas, se observar na segunda tarefa da mesma equipe a duração é de 8 horas iniciando corretamente no dia 21/11/17, mas na data de termino está incorreto, pois se restou 7 horas para o dia 21/11/17 e a tarefa é de 8 horas, o termino deveria ser 22/11/17 pois busca uma hora desta data;

2º Problema: Meu período de trabalho é de segunda a sexta, portando, se observar na sequencia das tarefas da mesma equipe esta caindo no final de semana.

Prováveis soluções (É o que eu não estou conseguindo fazer):

1º A formula deverá dividir corretamente as horas na data de término, como foi explicado anteriormente;
2º A formula deverá verificar se a data esta na lista de dias não uteis que está na aba (Parâmetros na coluna E) e fazer com que pule para o próximo dia útil.

senha para desbloquear a planilha: pcm

;) silvajmp

 
Postado : 26/11/2017 10:20 am
(@estevaoba)
Posts: 0
New Member
 

Boa noite.

A fórmula para a data de término precisa ser corrigida. Depois das condições, você colocou os respectivos valores SE VERDADEIRO e SE FALSO (marcado em vermelho). Com isso, a parte a seguir fica sem efeito.
SE(Painel!$J$14=VERDADEIRO;SE(MOD(CRO_SER!$H6;Painel!$J$7)=0;DIATRABALHO(CRO_SER!$I6;(CRO_SER!$H6/Painel!$J$7)-1);DIATRABALHO(CRO_SER!$I6;INT(CRO_SER!$H6/Painel!$J$7)))

J6=SE(OU(CRO_SER!$H6="";CRO_SER!$H6=0;CRO_SER!$I6="");"";SE(CRO_SER!$I6="Error: 1003";"";SE(Painel!$J$14=VERDADEIRO;SE(MOD(CRO_SER!$H6;Painel!$J$7)=0;DIATRABALHO(CRO_SER!$I6;(CRO_SER!$H6/Painel!$J$7)-1);DIATRABALHO(CRO_SER!$I6;INT(CRO_SER!$H6/Painel!$J$7)));SE(MOD(CRO_SER!$H6;Painel!$J$7)=0;DIATRABALHO(CRO_SER!$I6;(CRO_SER!$H6/Painel!$J$7-1);Parâmetros!$D$2:$D$44);DIATRABALHO(CRO_SER!$I6;INT(CRO_SER!$H6/Painel!$J$7);Parâmetros!$D$2:$D$44)))))

Eu fiz alterações nessa fórmula para contemplar todas as condições que foram desprezadas antes:

J6=SE(OU(CRO_SER!$H6="";CRO_SER!$H6=0;CRO_SER!$I6="");"";SE(CRO_SER!$I6="Error: 1003";"";SE(Painel!$J$14=VERDADEIRO;DIATRABALHO(CRO_SER!$I6;(CRO_SER!$H6/Painel!$J$7)-1);SE(MOD(CRO_SER!$H6;Painel!$J$7)=0;DIATRABALHO(CRO_SER!$I6;INT(CRO_SER!$H6/Painel!$J$7));SE(MOD(CRO_SER!$H6;Painel!$J$7)=0;DIATRABALHO(CRO_SER!$I6;(CRO_SER!$H6/Painel!$J$7-1);Parâmetros!$D$2:$D$44);DIATRABALHO(CRO_SER!$I6;INT(CRO_SER!$H6/Painel!$J$7);Parâmetros!$D$2:$D$44))))))

Mas aí encontrei outro problema, desta vez na fórmula da data de início.

J5=SE(Painel!$J$3="";"Error: 1000";SE(CRO_SER!$G6="";"Error: 1001";SE(CRO_SER!$K6="";"Error: 1002";SE(CONT.SES(CRO_SER!$G$5:$G6;CRO_SER!$G6;CRO_SER!$K$5:$K6;0)>1;"Error: 1003";SE(CRO_SER!$K6=0;SOMA(Painel!$J$3+CRO_SER!$L6);SE(E(CRO_SER!$K6>0;MOD(PROCV(CRO_SER!$K6;CRO_SER!$A:$M;8;FALSO);Painel!$J$7)>0);PROCV(CRO_SER!$K6;CRO_SER!$A:$M;10;FALSO)+CRO_SER!$L6;SE(E(CRO_SER!$K6>0;MOD(PROCV(CRO_SER!$K6;CRO_SER!$A:$M;8;FALSO);Painel!$J$7)=0);SOMA(PROCV(CRO_SER!$K6;CRO_SER!$A:$M;10;FALSO)+CRO_SER!$L6)+1;"")))))))

A função PROCV não faz busca em colunas à esquerda do valor de referência (CRO_SER!$K6). Nessa linha, a coluna 10 (J) traz a data 22/11, mas ela retorna 21/11.
PROCV(CRO_SER!$K6;CRO_SER!$A:$M;10;FALSO)

Mas se a intenção for mesmo buscar a data na coluna J, haverá um problema de referência circular. Portanto, sugiro que você revise essa parte da fórmula.

Good luck!

 
Postado : 26/11/2017 8:36 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
Topic starter
 

Estevaoba, boa noite, obrigado por contribuir, vou revisar as formulas, mas fica aberto para mais sugestões suas e dos colegas do fórum.

Status: Em aberto

Valeu ;)

 
Postado : 27/11/2017 5:27 pm