IF语句:如果条件为假(“”不起作用)如何使单元格留空


123

我想编写一个IF语句,如果条件为FALSE,则单元格将留空。请注意,例如,如果在C1中输入以下公式(条件为false):

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

并且如果C1被测试为空白或未使用,即使C1似乎为空白=ISBLANK(C1),也会返回FALSEC1。这意味着,=IF(A1=1,B1,"")如果不满足条件,该公式在技术上不会将单元格留空。

关于实现这一目标的任何想法?谢谢,


2
那是因为它不是空白。它有一个公式。试试这个= C1 =“”,或者如果您想变得非常疯狂= IF(OR(C1 =“”,ISBLANK(C1)),TRUE,FALSE)
Stepan1010 2013年

2
@ Stepan1010没有必要让疯狂,因为OR(C1="",ISBLANK(C1))是等价的。
Museful

1
如果满足条件,这是一种获取真正的空空白的方法:stackoverflow.com/a/39351425/1903793
Przemyslaw Remin

Answers:


42

试试这个

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

对于真正为空白或仅包含空白的单元格,将返回true。

有关其他一些选择,请参见此文章

编辑

反映评论和最终操作:输入“ deleteme”之类的其他值,而不是计算“”,然后搜索“ deleteme”而不是空格。

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

好吧,对我来说,问题不是每个人所说的“空白测试”的结果,而是以下内容:我将应用于if statement整个行,然后我要Go To -> Special -> Blanks用来删除该行中的空白单元格,即条件为假的单元格。但是,Go to不会在我的行中检测到任何空白单元格,特别是由于这个问题,我的IF语句每次都不会返回空白单元格。因此,我需要更改我的IF语句,以便它适当地返回空白单元格。
Mayou

4
如果仍然要删除它们,可以返回一个不同的值(即“ deleteme”),然后在其他例程中搜索该值。
波特兰赛跑者2013年

1
谢谢你的提示!那正是我所做的!我尝试了= IF(A1,B1,NA()),然后使用Go To -> Special -> Formula -> Errors并成功删除了不满足条件的单元格!再次感谢您的小费!
Mayou 2013年

66

不幸的是,没有公式可以导致真正的空白单元格,这""是最好的公式。

我不喜欢ISBLANK,因为它不会看到只有""空白的单元格。相反,我更喜欢COUNTBLANK,它将被""视为空白,因此基本上=COUNTBLANK(C1)>0意味着C1为空白或具有""

如果需要删除列中的空白单元格,我建议在该列上过滤空白,然后选择生成的单元格并按Del。之后,您可以卸下过滤器。


3
=COUNTBLANK(C1)>0确实的伎俩!那ISBLANK()不是为我工作。ks!
StinkyCat 2015年

1
任何大于0的数字都将TRUEIF语句的上下文中求值为,因此您可以只用代替,IF(COUNTBLANK(C1), .... )而不必使>0仅仅是为了使内容更简洁。
Tom Auger

这是一种将真实的空空白作为公式结果的方法:stackoverflow.com/a/39351425/1903793
Przemyslaw Remin

19

我想补充一下,还有另一种可能性-使用该功能na()

例如 =if(a2 = 5,"good",na());

这将用#N / A填充单元格,并且如果您对列进行图表绘制,则不会绘制数据图表。我知道这不是“空白”,但是如果您的数据中包含空白字符串并且""是有效的选择,则这是另一种可能性。

同样,count(a:a)将不会对通过此操作设置为n / a的单元进行计数。


2

如果要使用现象学(其中包含公式)的空白单元格进行算术/数学运算,则只需使用以下公式即可:

=N(C1)

假设C1是“空白”单元格


1

你可以试试看。

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

如果将此公式放在单元格C1中,则可以测试该单元格在其他单元格中是否为空白

=ISBLANK(C1)

您应该看到TRUE。我已尝试使用Microsoft Excel2013。希望这会有所帮助。


0

我发现这种解决方法似乎可以解决问题:

修改原始公式:

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

然后选择该列,搜索并将“ filler”替换为空。您想要为空白/空的单元格实际上是空的,如果您使用“ ISBLANK”进行测试,它将返回TRUE。不是最优雅的,但是它很快并且有效。


这将行不通,查找和替换将替换公式中的填充符,从而留下与以前相同的问题。
ChrisM

0

最简单的解决方案是,如果IF语句返回false,则使用条件格式将结果单元格的字体更改为任何彩色背景。是的,从技术上讲该单元格不是空白,但是您将无法看到其内容。


可以使用if语句清空单元格。虽然您的解决方案是可行的,但这不是最佳方法。
马特

0

这将起作用(对上面的修改,解决方法,而不是公式)

修改您的原始公式:= IF(A1 = 1,B1,“ filler”)

在电子表格上放置过滤器,在B列中仅选择“填充器”,突出显示所有带有“填充器”的单元格,点击删除,删除过滤器


我不知何故不是OP想要的。看来他想要一个公式。您说这不是公式,但仍然如此。
ZygD 2015年

0

您可以执行以下操作以显示空白:

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

if第一个逗号之前是条件,然后在条件里面返回true,如果条件是则返回结果,如果最后一个则返回空白false


0

C1中的公式

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

给出的答案是“”(不视为空白)或B1的内容。

如果您希望D1中的公式在C1为“”时显示TRUE,而在C1中还有其他值时显示FALSE,则使用公式

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

代替ISBLANK


0

这是我的工作

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

使用OR条件OR(ISBLANK(cell),cell =“”)



-2

验证A列中的空白数据

步骤1:步骤1:B1 = isblank(A1)

步骤2:拖动整个列的公式,例如B1:B100; 这将从B1到B100返回Ture或False,具体取决于A列中的数据

步骤3:CTRL + A(全部选择),CTRL + C(全部复制),CRTL + V(全部粘贴为值)

步骤4:Ctrl + F;查找和替换功能查找“ False”,替换为“ 将此字段留空 ”;查找并替换所有

你去了杜德!


-3

而不是使用“”,而是使用0。然后使用条件格式将0设置为背景色,以使其显示为空白。

由于空白单元格和0在大多数情况下将具有相同的行为,因此可以解决此问题。


2
我认为这不是令人满意的答案,因为原始电子表格数据中现在将有0。导出,复制/粘贴或任何其他处理数据的任务都不是正确的,全为0。
Jeff Brateman 2014年

这是个坏主意,因为0难以按数字过滤。否则,0可以是通常的正确值。那么如何识别好0和“空白” 0之间呢?我建议您删除此答案:)
Znik

-3

这应该工作:= IF(A1 = 1,B1)

如果条件不满足,则第三个参数表示单元格的值是可选的。


2
当条件评估为false并且不存在第三个参数时,Excel返回第一个参数(FALSE)的值。不幸的是,这似乎不起作用。

2
确定我已经测试过了-但它不会复制。所以你是对的,这个答案是完全错误的。最好删除它以节省人们的时间吗?
希瑟·史塔克
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.