Página 1 de 1

Formulas para encontrar maior respeitando critérios.

Enviado: 21 Jan 2019 às 18:40
por IvoNogueira
Olá :D

Estou a precisar de uma ajudinha meus caros, tenho aqui um desafio que não tenho conseguido resolver!
Em resumo precisava encontrar uma forma que devolva o numero maior ou igual a um numero de referencia e, obedecer a outros critério.

Exemplo em Anexo.


Desde já agradeço a Ajuda que vier :D

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 21 Jan 2019 às 20:43
por osvaldomp
Experimente a fórmula matricial abaixo em E14.
Código: Selecionar todos
=ÍNDICE(Tabela1[Valor];CORRESP(1;(Tabela1[Critério 1]=B14)*(Tabela1[Valor]=MÍN(SE(Tabela1[Critério 1]=B14;SE(Tabela1[Valor]>=D14;Tabela1[Valor]))));0))
obs. por ser uma fórmula matricial, após colar a fórmula na célula aperte F2 e em seguida aperte juntas Ctrl+Shift+Enter, em seguida arraste para baixo

Formulas para encontrar maior respeitando critérios.

Enviado: 21 Jan 2019 às 21:26
por IvoNogueira
Olá osvaldomp, muito obrigado por responder!
Testei mas não funciona pois devolve erro de valor! Contudo, um dos Critérios 2 tambem não está incluido!

Eu tenho usado a mesmo tipo de lógica para tentar construir o a formula, o problema é que usa texto e números. :?

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 21 Jan 2019 às 22:01
por osvaldomp
IvoNogueira escreveu: Testei mas não funciona pois devolve erro de valor!
Veja a obs. que coloquei no post anterior.

Contudo, um dos Critérios 2 tambem não está incluido!
Verdade. Experimente a versão abaixo.
Anexei cópia do seu arquivo com a fórmula abaixo aplicada.
Código: Selecionar todos
=ÍNDICE(Tabela1[Valor];CORRESP(1;(Tabela1[Critério 1]=[@[Critério 1]])*(Tabela1[Critério 2]=[@[Critério 2]])*(Tabela1[Valor]=MÍN(SE(Tabela1[Critério 1]=[@[Critério 1]];SE(Tabela1[Valor]>=[@[Valor de Referencia]];Tabela1[Valor]))));0))

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 22 Jan 2019 às 06:40
por FelipeMGarcia
Amigo,

Veja se o que fiz lhe ajuda, eu fiz com fórmula matricial e sem matricial.

Espero que ajude.

Caso queira agradecer, clique na mãozinha.

Abs

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 22 Jan 2019 às 07:41
por osvaldomp
FelipeMGarcia escreveu:...eu fiz com fórmula matricial e sem matricial.
A sua segunda fórmula é matricial também pois a função ÍNDICE utilizada no modo matriz é nativa matricial e por isso ela torna a fórmula inteira em fórmula matricial. ;)

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 22 Jan 2019 às 15:09
por IvoNogueira
osvaldomp escreveu:
IvoNogueira escreveu: Testei mas não funciona pois devolve erro de valor!
Veja a obs. que coloquei no post anterior.

Contudo, um dos Critérios 2 tambem não está incluido!
Verdade. Experimente a versão abaixo.
Anexei cópia do seu arquivo com a fórmula abaixo aplicada.
Código: Selecionar todos
=ÍNDICE(Tabela1[Valor];CORRESP(1;(Tabela1[Critério 1]=[@[Critério 1]])*(Tabela1[Critério 2]=[@[Critério 2]])*(Tabela1[Valor]=MÍN(SE(Tabela1[Critério 1]=[@[Critério 1]];SE(Tabela1[Valor]>=[@[Valor de Referencia]];Tabela1[Valor]))));0))
Olá Osvaldo! Agradecido pela sua ajuda e sua paciencia! Voce é genial :D
Realmente funcionou excepto para uma situação especifica! Como estamos a utilizar a formula de mínimo para devolver um valor dentro da matrix, quando o valor do critério é superior ao valor máximo do valor de referencia a formula devolve um erro pois não existe um valor mínimo. A ideia é que devolva sempre um valor, neste caso, como não há um minimo deveria devolver o máximo da matriz!

Tentei sem sucesso, resolver dentro das condições do SE() mas não comprendo inteiramente a sua função, por isso queria questionar sobre isso!
Bom acontece que não consigo compreender o porque do valor de procura do CORRESP(1,...). Se não for pedir de mais gostaria de entender melhor esta parte, contudo suponho que o 1 seja o primeiro valor mínimo da Matriz! será isso?

Já agora ...
Não sabia que podia usar o * para juntar as condições para referenciar a matriz( Genial :o ) ! Valeu, Obrigado.

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 22 Jan 2019 às 15:27
por IvoNogueira
FelipeMGarcia escreveu:Amigo,

Veja se o que fiz lhe ajuda, eu fiz com fórmula matricial e sem matricial.

Espero que ajude.

Caso queira agradecer, clique na mãozinha.

Abs
Olá FilipeMGarcia e obrigado pela sua ajuda !

No entanto continuamos a temos o mesmo problema que existe na formula do Osvaldo! Quando o numero de procura é superior ao máximo da matriz, a formula não devolve um numero porque não existes. Ao invés disso a ideia seria devolver o valor mais alto dentro da matrix!

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 22 Jan 2019 às 15:54
por osvaldomp
IvoNogueira escreveu: Realmente funcionou excepto para uma situação especifica! ... A ideia é que devolva sempre um valor, neste caso, como não há um minimo deveria devolver o máximo da matriz!
Ivo, quem tenta ajudar toma como base o que é disponibilizado no arquivo/na planilha e o que é solicitado pelo interessado.
E no seu exemplo não consta essa situação que você expôs por último. Então eu sugiro que você disponibilize uma nova amostra do seu arquivo com TODAS as situações possíveis de ocorrer (são as exceções que você comentou acima e que não estão previstas nas fórmulas até aqui sugeridas) e para cada situação qual o resultado esperado com as necessárias explicações de como o resultado foi obtido.

dicas
1. para responder clique em + resposta, só clique em Citar se necessário.
2. seria oportuno você não repetir títulos de colunas nas duas Tabelas pois talvez o Excel poderá se "confundir" nas fórmulas em alguma situação.

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 22 Jan 2019 às 17:23
por IvoNogueira
Me desculpe Osvaldo. Realmente não estava a utilizar o Fórum de forma correta.

No exemplo inicial eu não pode prever a situação que falei anteriormente, foi um lapso meu pois deveria ter dito que a formula deve retornar sempre um numero.
Quanto a nomeação das colunas é apenas ilustrativo, criei este ficheiro para recriar o "problema" e as condições especificas do original, e também para que a pessoa pudesse visualmente relacionar a ideia entre as tabelas.

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 23 Jan 2019 às 15:53
por osvaldomp
Olá, Ivo.

Veja se a fórmula abaixo atende.
Código: Selecionar todos
=SEERRO(ÍNDICE(Tabela1[Valor de Referencia];CORRESP(1;(Tabela1[Ano R.]=[@Ano])*(Tabela1[Situação R.]=[@Situação])*(Tabela1[Valor de Referencia]=MÍN(SE(Tabela1[Ano R.]=[@Ano];SE(Tabela1[Valor de Referencia]>=[@[Valor T.]];Tabela1[Valor de Referencia]))));0));MÁXIMO((Tabela1[Valor de Referencia])*((Tabela1[Ano R.])=[@Ano])*((Tabela1[Situação R.])=[@Situação])))

Re: Formulas para encontrar maior respeitando critérios.

Enviado: 23 Jan 2019 às 16:57
por IvoNogueira
Olá Osvaldomp.

Sim a formula atinge o seu propósito. Os meu maiores agradecimentos, a sua ajuda foi preciosa.
Entretanto a formula não estava funcionando primeiramente porque a função SEERRO na minha versão do Excel é na verdade SE.ERRO().

Deixo ficar para os interesados em utilizar este exemplo a versão que ficou a funcionar para mim.
Código: Selecionar todos
=SE.ERRO(ÍNDICE(Tabela1[Valor de Referencia];CORRESP(1;(Tabela1[Ano R.]=[@Ano])*(Tabela1[Situação R.]=[@Situação])*(Tabela1[Valor de Referencia]=MÍNIMO(SE(Tabela1[Ano R.]=[@Ano];SE(Tabela1[Valor de Referencia]>=[@[Valor T.]];Tabela1[Valor de Referencia]))));0));MÁXIMO((Tabela1[Valor de Referencia])*((Tabela1[Ano R.])=[@Ano])*((Tabela1[Situação R.])=[@Situação])))
Uma vez mais agradeço a sua paciencia e disponibilidade em me ajudar.