Excel IF语句返回“ FALSE”

时间:2019-06-04 07:25:48

标签: excel excel-formula

我正在尝试编写一条语句,该语句将读取相邻单元格的内容并根据结果选择一个值来标点一个段落。就像下面的句子一样。

声明1,声明2,声明3。

如果下一条语句包含内容,则包含逗号。如果下一条语句没有内容,则包括句号。如果下一个和上一个语句不包含任何内容,则不包含任何内容。我使用了下面的公式,但是应该加上句号的那部分返回FALSE:

=IF(A1<>"",IF(C1<>"",", "),IF(A1<>"",IF(C1="",". "),IF(A1="",IF(C1="",""))))

我做错了什么?

4 个答案:

答案 0 :(得分:3)

我相信您的公式过于复杂。例如,您最多可以测试3次A1是否为空

您是否要实现这一目标?

=IF(A1<>"",IF(C1<>"","; ",""),IF(C1="",". ",""))
  • 如果A1不为空且C1不为空=;
  • 如果A1不为空白,C1为空白=否
  • 如果A1为空白,C1为空白=。
  • 如果A1为空白且C1不为空白=无

答案 1 :(得分:3)

IF语句具有以下格式:=IF(<Statement>, <Value_If_True>, <Value_If_False>)

如果我们以相同的方式分解您的代码,则会得到以下信息:

    =IF(<Statement1>, IF_TRUE1(<Statement2>, <Value_If_True2>), IF_FALSE1(<Statement3>, IF_TRUE3(<Statement4>, <Value_If_True4>), IF_FALSE3(<Statement5>, IF_TRUE5(<Statement6>, <Value_If_True6>))))

默认情况下,缺少的<Value_If_False>将返回FALSE

现在,这可能有点难以理解,所以这是另一种布局: Flow Chart of If Statement Logic

希望您可以在那里看到所有重复的“问题”节点-并且"."无法到达,因为它要求A1<>""FALSE,并且 TRUE

重写代码,仍然有1个“丢失”终止符:

=IF(A1="", IF(C1="", "", FALSE), IF(C1="", ".", ", "))

(或者,如果您真的想花哨的话,请使用CHOOSE语句:)

=CHOOSE(1+(A1="")+2*(C1=""), ", ", FALSE, ".", "")

答案 2 :(得分:0)

公式的这一部分似乎是多余的,因为它已被初始逻辑参数捕获:

IF(A1<>"",IF(C1="",". "),IF(A1="",IF(C1="","")))

我可能无法完全理解您的目标,但这应该可以解决问题: 我假设这里的语句是由A,B和C列中的输入定义的,并且必须首先填充A列。

=IF(A1="","",IF(AND(B1="",C1=""),". ",", "))

如果我要离开的话,请与您共享表/表格结构,以取得理想的结果。

答案 3 :(得分:0)

好,去看看就可以了:

=IF(AND(A1="",C1=""),"",IF(AND(A1<>"",C1<>""),A1&";"&C1,A1&C1&"."))

enter image description here

如果两者都不为空,则应使用“;”分隔并以“。”结尾...

=IF(AND(A1="",C1=""),"",IF(AND(A1<>"",C1<>""),A1&";"&C1&".",A1&C1&"."))

请参阅:

enter image description here