Como posso combinar duas instruções IF no Excel?

0

Como posso combinar duas instruções IF no Excel?

O primeiro IF está verificando uma data de início (no formato MMDDYY) de uma célula ( Staff!$G5 ) e se essa data for maior ou igual a uma data (no formato MMDDYY) em uma célula da minha planilha ativa ( S1 ), eu quero que ele execute uma fórmula (Staff!$D5*SetupTab!$B$3))*S$2) .

Portanto, esta fórmula funciona para mim para executar esta função: =IF(S$1>=Staff!$G5,Staff!$D5*SetupTab!$B$3))*S$2

A ressalva é que, se uma data final (célula Staff!$H5 ) estiver além da data na mesma célula S1, em vez de executar a fórmula, o valor da célula seria apenas zero.

Portanto, seria necessário algo ao longo desta linha, mas isso não parece estar verificando corretamente ambos os valores de IF: =IF(S$1>=Staff!$G5, IF(S$1>=Staff!$H5 Staff!$D5*SetupTab!$B$3))*S$2

Um pequeno histórico / esclarecimento sobre o que estou tentando realizar ... este é um relatório de tipo financeiro que calculará a despesa por mês para um funcionário. A fórmula principal calcula a despesa para mim, mas se um funcionário sair da empresa, não será mais necessário prever essa despesa além da data final, e é por isso que eu quero que ela seja "zerada". Da mesma forma, se eu tiver um novo funcionário começando em dois meses, mas quero colocá-lo nos livros agora para começar a prevê-lo, não quero que a despesa deles comece a calcular até a data real de início.

Atualização: A ideia básica da fórmula é determinar se preciso prever uma despesa para um funcionário em um determinado mês. Existem duas variáveis totalmente separadas, portanto, não é uma questão de variável1 e variável2 ... as duas instruções IF são independentes uma da outra.

1) Se eles são um funcionário ativo em um mês ... com sua data de início na célula "staff! G5" sendo anterior ou igual ao mês atual (célula S1), e não há data final (equipe de celular ! H5), então eu quero os dólares previstos.

2) Se eles ainda não começaram (por exemplo, a data de início na célula "staff! H5" é de um mês ou dois na estrada), a previsão seria de zero dólares até o mês de início.

3) Se houver uma data final na célula "staff! H5", então minha previsão deve ser zero para todos os meses após a data final

Eu realmente espero que isso esteja fazendo um pouco de sentido para alguém lá fora :) Anexei uma compilação de captura de tela para ajudar a explicar.

    
por WestsideBill 21.04.2016 / 03:21

3 respostas

0

Sua fórmula está dizendo que a data de pagamento deve ser maior do que a data final em que você deve reverter o sinal como o seguinte:
=IF(And(S$1>=Staff!$G5,or(S$1 <= Staff!H5,isblank(Staff!H5))),Staff!$D5 * Setup!$B$3 * S$2,0)
Agora, essa fórmula leva em consideração a data final vazia (essa é a razão para todo 0)

    
por 21.04.2016 / 21:37
0

use AND() para verificar as duas condições:

=IF(AND(S$1>=OtherTab!$G6, S$1>=OtherTab!$H6), OtherTab!$D6*SetupTab!$B$3, 0)

i, e

=IF(AND(condition1, condition2), value_if_both_true, else_value)
    
por 21.04.2016 / 03:32
0

1) Se eles são um funcionário ativo em um mês ... com sua data de início na célula "staff! G5" sendo anterior ou igual ao mês atual (célula S1), e não há data final (equipe de celular ! H5), então eu quero os dólares previstos.

AND(s$1 <= Staff!G5, Staff!H5 = 0)

2) Se eles ainda não começaram (por exemplo, a data de início na célula "staff! H5" é de um mês ou dois na estrada), a previsão seria de zero dólares até o mês de início.

(s$1 > Staff!G5)

3) Se houver uma data final na célula "staff! H5", então minha previsão deve ser zero para todos os meses após a data final

(s$1 > Staff!H5)

Portanto, a sua lógica deve ser "if (case2 OU case3), ENTÃO 0, DE OUTRA FORMA, se caso1, EM SEGUIDA, calcular SOBER 0

=IF(
OR((s$1 > Staff!G5),(s$1 > Staff!H5))
,0,
(
IF(
AND(s$1 <= Staff!G5, Staff!H5 = 0)
,
(Staff!$D5 * Setup!$B$3 * S$2)
,0
))
)

(não testado, e eu terminei um pouco para facilitar a leitura)

    
por 21.04.2016 / 22:55