Instrução IF: como deixar a célula em branco se a condição for falsa (“” não funciona)

123

Gostaria de escrever uma instrução IF, em que a célula é deixada em branco se a condição for FALSE. Observe que, se a seguinte fórmula for inserida em C1 ( para a qual a condição é falsa ), por exemplo:

 =IF(A1=1,B1,"")

e se C1 for testado em branco ou não estiver em uso =ISBLANK(C1), isso retornará FALSE, mesmo que C1 pareça estar em branco. Isso significa que a =IF(A1=1,B1,"")fórmula tecnicamente não deixa as células em branco se a condição não for atendida.

Alguma idéia de como conseguir isso? Obrigado,

Mayou
fonte
2
Isso é porque não está em branco. Tem uma fórmula nele. Tente isto = C1 = "" ou se você quiser ficar realmente louco = IF (OR (C1 = "", ISBLANK (C1)), TRUE, FALSE)
Stepan1010
2
@ Stepan1010 Não há necessidade de obter que porque louco OR(C1="",ISBLANK(C1))é equivalente.
Museful
1
Aqui está uma maneira de obter um verdadeiro espaço em branco vazio se a condição for satisfeita: stackoverflow.com/a/39351425/1903793
Przemyslaw Remin

Respostas:

42

Tente isso em vez disso

=IF(ISBLANK(C1),TRUE,(TRIM(C1)=""))

Isso retornará verdadeiro para células que estão realmente em branco ou que não contêm nada além de espaço em branco.

Veja este post para algumas outras opções.

editar

Para refletir os comentários e o que você acabou fazendo: Em vez de "" avaliar outro valor, como 'deleteme' e, em seguida, procure por 'deleteme' em vez de espaços em branco.

=IF(ISBLANK(C1),TRUE,(TRIM(C1)="deleteme"))
Portland Runner
fonte
Bem, o problema para mim não são os resultados do "teste em branco", por exemplo, mas o seguinte: aplico o if statementa uma linha inteira e, em seguida, gostaria de usar Go To -> Special -> Blankspara excluir as células em branco da linha, ou seja, o células para as quais a condição era falsa. No entanto, Go toele não detecta células em branco na minha linha, especificamente devido a esse problema que minha instrução IF não retorna células em branco por assim dizer. Portanto, preciso alterar minha instrução SE para que ela retorne adequadamente as células em branco.
Mayou
4
Se você deseja excluí-los de qualquer maneira, você pode retornar um valor diferente (por exemplo, 'deleteme') e depois procurar esse valor em sua outra rotina.
Portland Runner
1
Obrigado pela dica! Foi exatamente isso que eu fiz! Eu tentei = IF (A1, B1, NA ()) e usei Go To -> Special -> Formula -> Errorse excluí com êxito as células que não atendem à condição! Obrigado pela dica novamente!
Mayou
66

Infelizmente, não existe uma maneira de resultar em uma célula verdadeiramente em branco, ""é a melhor fórmula que podemos oferecer.

Não gosto do ISBLANK porque ele não verá células que só têm ""espaços em branco. Em vez disso, prefiro COUNTBLANK, que será contado ""em branco, então basicamente =COUNTBLANK(C1)>0significa que C1 está em branco ou possui "".

Se você precisar remover células em branco em uma coluna, eu recomendaria filtrar a coluna por espaços em branco, selecionar as células resultantes e pressionar Del. Após o qual você pode remover o filtro.

tigeravatar
fonte
3
O =COUNTBLANK(C1)>0realmente faz o truque! o ISBLANK()não estava funcionando para mim. thks!
StinkyCat
1
Qualquer número> 0 é avaliado TRUEno contexto de uma IFdeclaração, para que você possa simplesmente substituir a IF(COUNTBLANK(C1), .... )necessidade >0, apenas para tornar as coisas mais limpas.
Tom Auger
Aqui está uma maneira de obter um verdadeiro espaço em branco vazio como um resultado da fórmula: stackoverflow.com/a/39351425/1903793
Przemyslaw Remin
19

Eu queria acrescentar que há uma outra possibilidade - para usar a função na().

por exemplo =if(a2 = 5,"good",na());

Isso preencherá a célula com # N / A e, se você mapear a coluna, os dados não serão representados graficamente. Sei que não está "em branco" como tal, mas é outra possibilidade se você tiver cadeias em branco nos seus dados e ""é uma opção válida.

Além disso, count(a:a)não contará células que foram definidas como n / a fazendo isso.

user3791372
fonte
2

Se você deseja usar uma célula em branco fenomenal (com uma fórmula nela) para fazer uma operação aritmética / matemática, tudo que você precisa fazer é usar esta fórmula:

=N(C1)

assumindo que C1 é uma célula "em branco"

usuario
fonte
1

Você poderia tentar isso.

=IF(A1=1,B1,TRIM(" "))

Se você colocar essa fórmula na célula C1, poderá testar se essa célula está em branco em outras células

=ISBLANK(C1)

Você deve ver VERDADEIRO. Eu tentei no Microsoft Excel 2013. Espero que isso ajude.

Yugo Gautomo
fonte
0

Eu descobri que esta solução alternativa parece fazer o truque:

Modifique sua fórmula original:

=IF(A1=1,B1,"filler")

Em seguida, selecione a coluna, pesquise e substitua "filler" por nada. As células que você deseja ficar em branco / vazias estão realmente vazias e, se você testar com "ISBLANK", ele retornará VERDADEIRO. Não é o mais elegante, mas é rápido e funciona.

user3285247
fonte
Isso não funcionará, a localização e substituição substituirão o preenchimento na fórmula, deixando os mesmos problemas de antes.
chrism
0

A solução mais fácil é usar a formatação condicional se a instrução IF voltar falsa para alterar a fonte da célula de resultados para qualquer cor de fundo. Sim, tecnicamente a célula não está em branco, mas você não poderá ver seu conteúdo.

b criativo
fonte
É possível em branco uma célula com uma instrução if. Embora sua solução seja viável, não é a melhor abordagem.
Matt
0

Isso funcionará (modificação acima, solução alternativa, não fórmula)

Modifique sua fórmula original: = IF (A1 = 1, B1, "filler")

Coloque o filtro na planilha, escolha apenas "preenchimento" na coluna B, destaque todas as células com "preenchimento" nelas, pressione Excluir, remova o filtro

convidado XL
fonte
De alguma forma, sinto que não é o que o OP queria. Parece que ele queria uma fórmula. Você diz que isso não é uma fórmula, mas ainda assim.
ZygD 28/04
0

Você pode fazer algo assim para mostrar o espaço em branco:

=IF(AND((E2-D2)>0)=TRUE,E2-D2," ")

Dentro ifantes da primeira vírgula existir a condição, o resultado será retornado se, truee o último valor estiver em branco, se a condição forfalse

Deepanshu Vats
fonte
0

A fórmula em C1

=IF(A1=1,B1,"")

está fornecendo uma resposta "" (que não é tratada em branco) ou o conteúdo de B1.

Se você deseja que a fórmula em D1 mostre VERDADEIRO se C1 for "" e FALSE se C1 tiver mais alguma coisa, use a fórmula

=IF(C2="",TRUE,FALSE)

em vez de ISBLANK

Crisma
fonte
0

Aqui está o que eu faço

=IF(OR(ISBLANK(AH38),AH38=""),"",IF(AI38=0,0,AH38/AI38))

Use a condição OR OR (ISBLANK (célula), célula = "")

Talha
fonte
-2

Para validar dados na coluna A para espaços em branco

Etapa 1: Etapa 1: B1 = isblank (A1)

Etapa 2: arraste a fórmula para a coluna inteira, digamos B1: B100; Isso retorna Ture ou False de B1 a B100, dependendo dos dados na coluna A

Etapa 3: CTRL + A (Selecionar tudo), CTRL + C (Copiar tudo), CRTL + V (Colar tudo como valores)

Etapa 4: Ctrl + F; Encontre e substitua a função Encontre "False", Substitua " deixe este campo em branco "; Encontre e substitua TUDO

Lá vai você, cara!

Raj Bunnu
fonte
-3

Em vez de usar "", use 0. Em seguida, use formatação condicional para colorir 0 para a cor de fundo, para que apareça em branco.

Como as células em branco e 0 terão o mesmo comportamento na maioria das situações, isso pode resolver o problema.

Nein
fonte
2
Não acho que seja uma resposta satisfatória, pois agora haverá zeros nos dados brutos da planilha. Exportar, copiar / colar ou qualquer outra tarefa que lide com os dados não estará correta com todos esses zeros.
Jeff Brateman
é uma má ideia, porque 0 tem problemas com a filtragem por números. caso contrário, 0 pode ser o valor usual e correto. então como reconhecer entre 0 bom e 0 em branco? Eu sugiro que você remover esta resposta :)
Znik
-3

Isso deve funcionar: = SE (A1 = 1, B1)

O terceiro argumento informando o valor da célula se a condição não for atendida é opcional.

Heather Stark
fonte
2
O Excel retorna o valor do primeiro argumento (FALSE) quando a condição é avaliada como falsa e o terceiro argumento não existe. Infelizmente isso não parece funcionar.
Eagle
2
Tinha certeza de que eu o havia testado - mas ele não é replicado. Então você está certo, esta resposta está totalmente errada. É melhor excluí-lo para economizar tempo das pessoas?
Heather Stark