Istruzione IF: come lasciare la cella vuota se la condizione è falsa ("" non funziona)


123

Vorrei scrivere un'istruzione IF, in cui la cella viene lasciata vuota se la condizione è FALSE. Si noti che, se ad esempio viene inserita la seguente formula in C1 ( per cui la condizione è falsa ):

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

e se C1 viene testato per essere vuoto o non utilizzare =ISBLANK(C1), questo ritornerebbe FALSE, anche se C1 sembra essere vuoto. Ciò significa che la =IF(A1=1,B1,"")formula non lascia tecnicamente le celle vuote se la condizione non è soddisfatta.

Qualche idea su come ottenerlo? Grazie,


2
Questo perché non è vuoto. Ha una formula in esso. Prova questo = C1 = "" o se vuoi diventare davvero pazzo = IF (OR (C1 = "", ISBLANK (C1)), TRUE, FALSE)
Stepan1010

2
@ Stepan1010 Non c'è bisogno di ottenere che a causa pazzo OR(C1="",ISBLANK(C1))è equivalente.
Museful

1
Ecco un modo per ottenere un vero vuoto vuoto se la condizione è soddisfatta: stackoverflow.com/a/39351425/1903793
Przemyslaw Remin

Risposte:


42

Prova questo invece

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

Ciò restituirà true per le celle che sono veramente vuote o non contengono altro che spazi bianchi.

Vedi questo post per alcune altre opzioni.

modificare

Per riflettere i commenti e quello che hai finito per fare: invece di valutare "" inserisci un altro valore come "deleteme" e poi cerca "deleteme" invece degli spazi.

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

Bene, il problema per me non sono i risultati del "test in bianco" per dire, ma piuttosto il seguente: applico il if statementa un'intera riga, e poi vorrei utilizzare Go To -> Special -> Blanksper eliminare le celle vuote dalla riga, cioè il cellule per le quali la condizione era falsa. Tuttavia, Go tonon rileva alcuna cella vuota nella mia riga, in particolare a causa di questo problema che la mia istruzione IF non restituisce celle vuote per dire. Pertanto, devo modificare la mia istruzione IF in modo che restituisca adeguatamente celle vuote.
Mayou

4
Se intendi comunque eliminarli, puoi restituire un valore diverso (ad esempio "deleteme") e quindi cercare quel valore nell'altra routine.
Portland Runner

1
Grazie per il consiglio! Questo è esattamente quello che ho fatto! Ho provato = IF (A1, B1, NA ()) e ho usato Go To -> Special -> Formula -> Errorse cancellato con successo le celle che non soddisfano la condizione! Grazie ancora per il suggerimento!
Mayou

66

Sfortunatamente, non esiste una formula per ottenere una cella veramente vuota, ""le migliori formule possono offrire.

Non mi piace ISBLANK perché non vedrà le celle che hanno solo ""spazi vuoti. Invece preferisco COUNTBLANK, che conterà ""come vuoto, quindi in pratica =COUNTBLANK(C1)>0significa che C1 è vuoto o ha "".

Se è necessario rimuovere le celle vuote in una colonna, consiglierei di filtrare sulla colonna gli spazi vuoti, quindi selezionare le celle risultanti e premere Del. Dopodiché puoi rimuovere il filtro.


3
Fa =COUNTBLANK(C1)>0davvero il trucco! il ISBLANK()non funzionava per me. thks!
StinkyCat

1
Qualsiasi numero> 0 restituisce TRUEnel contesto di IFun'istruzione, quindi puoi semplicemente sostituire IF(COUNTBLANK(C1), .... )senza bisogno di >0, solo per rendere le cose più pulite.
Tom Auger

Ecco un modo per ottenere un vero vuoto vuoto come risultato della formula: stackoverflow.com/a/39351425/1903793
Przemyslaw Remin

19

Volevo aggiungere che esiste un'altra possibilità: utilizzare la funzione na().

per esempio =if(a2 = 5,"good",na());

Questo riempirà la cella con # N / A e se tracciate il grafico della colonna, i dati non verranno rappresentati graficamente. So che non è "vuoto" in quanto tale, ma è un'altra possibilità se hai stringhe vuote nei tuoi dati ed ""è un'opzione valida.

Inoltre, in questo count(a:a)modo non conterà le celle che sono state impostate su n / a.


2

Se vuoi usare una cella vuota fenomenale (con una formula in essa) per fare un'operazione aritmetica / matematica, tutto ciò che devi fare è usare questa formula:

=N(C1)

supponendo che C1 sia una cella "vuota"


1

Potresti provare questo.

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

Se inserisci questa formula nella cella C1, puoi verificare se questa cella è vuota in altre celle

=ISBLANK(C1)

Dovresti vedere TRUE. Ho provato su Microsoft Excel 2013. Spero che questo aiuti.


0

Ho scoperto che questa soluzione alternativa sembra fare il trucco:

Modifica la tua formula originale:

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

Quindi seleziona la colonna, cerca e sostituisci "filler" con niente. Le celle che vuoi siano vuote / vuote sono effettivamente vuote e se provi con "ISBLANK" restituirà TRUE. Non il più elegante, ma è veloce e funziona.


Questo non funzionerà, la ricerca e sostituzione sostituirà il riempitivo nella formula lasciando gli stessi problemi di prima.
ChrisM

0

La soluzione più semplice è utilizzare la formattazione condizionale se l'istruzione IF ritorna falsa per modificare il carattere della cella dei risultati in qualsiasi colore di sfondo. Sì, tecnicamente la cella non è vuota, ma non sarai in grado di vederne il contenuto.


È possibile cancellare una cella con un'istruzione if. Sebbene la tua soluzione sia fattibile, non è l'approccio migliore.
Matt

0

Funzionerà (modifica sopra, soluzione alternativa, non formula)

Modifica la formula originale: = IF (A1 = 1, B1, "filler")

Metti il ​​filtro sul foglio di lavoro, scegli solo "riempitivo" nella colonna B, evidenzia tutte le celle con "riempitivo", premi Elimina, rimuovi filtro


In qualche modo sento che non è quello che voleva OP. Sembra che volesse una formula. Dici che questa non è una formula, ma comunque.
ZygD

0

Puoi fare qualcosa del genere per mostrare uno spazio vuoto:

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

All'interno ifprima della prima virgola c'è la condizione, quindi il risultato e il valore restituito se truee l'ultimo valore come vuoto se la condizione èfalse


0

La formula in C1

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

sta dando una risposta di "" (che non è trattata come vuota) o il contenuto di B1.

Se vuoi che la formula in D1 mostri TRUE se C1 è "" e FALSE se C1 ha qualcos'altro, usa la formula

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

invece di ISBLANK


0

Ecco cosa faccio

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

Utilizza la condizione OR OR (ISBLANK (cell), cell = "")



-2

Per convalidare i dati nella colonna A per gli spazi vuoti

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

Passaggio 2: trascina la formula per l'intera colonna diciamo B1: B100; Ciò restituisce Ture o False da B1 a B100 a seconda dei dati nella colonna A

Passaggio 3: CTRL + A (Seleziona tutto), CTRL + C (Copia tutto), CRTL + V (Incolla tutto come valori)

Passaggio 4: Ctrl + F; Trova e sostituisci funzione Trova "Falso", Sostituisci " lascia questo campo vuoto "; Trova e sostituisci TUTTO

Ecco qua amico!


-3

Invece di usare "", usa 0. Quindi usa la formattazione condizionale per colorare 0 sul colore dello sfondo, in modo che appaia vuoto.

Poiché le celle vuote e 0 avranno lo stesso comportamento nella maggior parte delle situazioni, questo potrebbe risolvere il problema.


2
Non penso che questa sia una risposta soddisfacente, poiché ora ci saranno 0 nei dati grezzi del foglio di calcolo. L'esportazione, copia / incolla o qualsiasi altra attività che si occupa dei dati non sarà corretta con tutti quegli 0.
Jeff Brateman

è una cattiva idea perché 0 ha problemi con il filtraggio in base ai numeri. in altro modo, 0 può essere il valore normale e corretto. allora come riconoscere tra buono 0 e "vuoto" 0? Ti suggerisco di rimuovere questa risposta :)
Znik

-3

Questo dovrebbe funzionare: = IF (A1 = 1, B1)

Il terzo argomento che indica il valore della cella se la condizione non è soddisfatta è facoltativo.


2
Excel restituisce il valore del primo argomento (FALSO) quando la condizione restituisce false e il terzo argomento non esiste. Purtroppo non sembra funzionare.
Eagle

2
Ero sicuro di averlo testato, ma non si replica. Quindi hai ragione questa risposta è totalmente sbagliata. È meglio se lo elimino per risparmiare tempo alle persone?
Heather Stark
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.