Excel - Instrução If

Madruga

Power Member
Boa noite, precisava de uma mãozinha :003:

Tenho esta seguinte folha de calculo

77138sadasda.JPG


e o que pretendia saber fazer era, penso que seja com a instrução IF calcular o seguinte:

na zona onde diz total, o valor calculado vai ser referente a percentagem do HR ca de baixo, ou seja, neste caso é 0,36(36%) logo vendo a tabela ao lado ele vai buscar o valor de 30% referente a tabela ao lado. O que queria fazer era o Seguinte, que o IF caLculasse qualquer valor referente ao HR, ou seja, por exemplo - o valor era 0,27 (27%), ele automaticamente fazia o somatório das vendas e multiplicava pelo 25%. A estrutura deve ser do genero . If < 10% = 0, entre 10 e 15% = soma de vendas * 0,60, entre 16% e 20% = 0,68, etc.. não consigo é contrui-la.

EDIT: Ja converti o valor do HR nesta imagem para percentagem, n tenho a imagem actualizada
Alguma ajuda? :p
 
Última edição:
se bem entendi precisas disto:

=SE(HR<=10%;0;SE(HR<=15%;soma_das_vendas*0,6;SE(HR<=20;soma_das_vendas*0,68;SE(HR<=25;soma_das_vendas*0,76;SE(HR<=30;soma_das_vendas*0,85;soma_das_vendas*0,96)))))

Em que HR é a célula em que está o HR

Mas nesta situação seria melhor um PROCV.
 
Se percebi, queres saber qual é a celula do HR? é o G21

Nunca utilizei a função PROCV :(

EDIT:
sendo assim a formula ficava
=SE(G21<=10%;0;SE(G21<=15%;E21*0,6;SE(G21 <=20;E21*0,68;SE(G21<=25;E21*0,76;SE(G21<=30;E21*0,85;E21*0,96)))))

mas com este output, ele devolve sempre o valor o 2º valor desta condição, 15%..
 
Última edição:
Se percebi, queres saber qual é a celula do HR? é o G21

Nunca utilizei a função PROCV :(

EDIT:
sendo assim a formula ficava
=SE(G21<=10%;0;SE(G21<=15%;E21*0,6;SE(G21 <=20;E21*0,68;SE(G21<=25;E21*0,76;SE(G21<=30;E21*0,85;E21*0,96)))))

mas com este output, ele devolve sempre o valor o 2º valor desta condição, 15%..

Com procv ficaria assim:

=PROCV(G21;I2:J7;2)*soma_das_vendas

O I2:J7 corresponde à àrea da tabela onde fazes a correspondência.
Para funcionar com valores menores que 10 na tabela onde fazes a correspondência tens que acrescentar uma linha com 0 ficando assim:

0 0
10% 0,6
20% 0,68
......

EDIT: vi agora o teu SE e falta o sinal de % do 3º SE para a frente, o correcto seria:
=SE(G21<=10%;0;SE(G21<=15%;E21*0,6;SE(G21<=20%;E21*0,68;SE(G21<=25%;E21*0,76;SE(G21<=30%;E21*0,85;E21*0,96)))))
 
Última edição:
Epa obrigadão :009:

Consegui safar-me das 2 formas!

Só um reparo: =PROCV(G21;J6:K10;2)*E21

as celulas eram outras :D mas funcionou mesmo.

Em relação ao do IF, foi mesmo mera distracção, deve ser do sono

thanks :p
 
Epa obrigadão :009:

Consegui safar-me das 2 formas!

Só um reparo: =PROCV(G21;J6:K10;2)*E21

as celulas eram outras :D mas funcionou mesmo.

Em relação ao do IF, foi mesmo mera distracção, deve ser do sono

thanks :p

De nada, mais alguma dúvida diz.

As células eram outras porque apenas tinha tentado adivinhar pela imagem que tinhas colocado.

Em situações com mais do que 3 ou 4 SEs acho mais prático usar PROCV.
 
Boas,

Eu tenho uma duvida quanto a esta instrução.

Numa folha de excel tenho dados retirados de ficheiros através do AS400 mas do mesmo formato.

Tenho uma coluna com os nº de funcionário e outra com as férias de um respectivo mês. Nas duas seguintes tenho as férias do respectivo ano e outra com o numero de funcionário igual à primeira. Eu pretendo que se o numero da 1ªcoluna for igual à ultima os duas de férias sejam somados se não fique a zero.

=IF(A1=D1;B1+C1;="0") o que acontece é que a função devolve SEMPRE, a não ser que coloque novamente o numero e à mão sem copys, o valor como falso. Isto é, "0".
Já modifiquei à unha os formatos e devolve sempre o valor como false.

Alguém me consegue dizer o que não estou a fazer ou como é que posso resolver isto?
 
Não precisas de colocar ="0" na fórmula, basta colocares 0.
=IF(A1=D1;B1+C1;0)

Quanto à condição devolver sempre falso verifica se as células de ambas as colunas (A e D) estão em formato númerico.
 
Podes tentar desta forma também:

=IF(--A1=--D1;B1+C1;0)

ou, caso existam espaços em branco (muito comum quando se importam valores de aplicações):

=IF(TRIM(A1)=TRIM(D1);B1+C1;0)


Aproveitando este tópico, e para simplificar tantos IF's encadeados como foram mostrados nos exemplos iniciais, recomendo a utilização de VBA e criação de uma UDF. Exemplo: Excel: Criação de Fórmulas Personalizadas
 
Boas,

Não havia espaços e também tinha visto a formatação à unha. Para os espaços tinha usado o TRIM e a formatação fiz um a um. Desisti e encontrei a formula PRCV/VLOOKUP e ficou resolvido, no entanto surgiu o mesmo problema funcionava na primeira célula mas nas seguintes devolvia erro na formula. Fiz a formatação à unha e ficou na mesma com erro. Só ficou a funcionar aqueles que coloquei à mão e quando abri a pelica de erro e converti a célula (que já era formato numero) para numero.
Confesso que estas coisas normalmente só acontece comigo eu devo ter um gostinho especial em complicar o que é simples e isso é contagia os PCs só pode.
 
Back
Topo