【问题标题】:Lookup and join text gives zero instead of blank查找和连接文本给出零而不是空白
【发布时间】:2019-12-01 16:16:10
【问题描述】:

我正在尝试根据两个简单的标准查找值。

这是我的公式:

{=TEXTJOIN(". ";TRUE;IF(F1=A2:A6;IF(F2=B2:B6;C2:C6;"");""))}

但是,我在文本连接的中间得到0。当Text 实际为空或空白时,如何忽略One. Two. Three. Five 而不是One. Two. Three. 0. Five 的预期值,其中单元格B5 被忽略并留空。

【问题讨论】:

  • 您使用的是哪个版本的 excel?我在 Excel 15.4 for mac 中尝试了相同的示例,它按预期工作。使用的公式 - =TEXTJOIN(". ", TRUE, IF(F1=A2:A6, IF(F2=B2:B6, C2:C6, ""), ""))。请重新检查公式。
  • @stud3nt 我正在使用 Excel 2016。我的公式是数组公式。使用 Shift + Ctrl 是否得到相同的结果?
  • 刚刚使用数组公式添加了答案。

标签: excel join text excel-formula


【解决方案1】:

这完全合乎逻辑。它只是不像你想要的那样工作。两个IF 条件都是TRUE,接下来你告诉公式返回C2:C6 值。因此IF 返回一个零(您应该使用评估公式选项来查看发生了什么),因此不再是区域中的空单元格,而是数组中的零。 TEXTJOIN 中的 TRUE 参数因此不再为您提供帮助。要克服这个问题,您可以尝试:

=TEXTJOIN(". ",TRUE,IF((A2:A6=F1)*(B2:B6=F2)*(C2:C6<>""),C2:C6,""))

注意:是数组公式,需要通过 CtrlShiftEnter

【讨论】:

  • 谢谢。这可行,但是当 Text 中的字符串太长时,我会得到 #VALUE!。可以调整吗?
【解决方案2】:

尝试使用下面的数组公式来获得所需的结果。将TEXTJOIN 放入IF

=IF(F1=A2:A6, IF(F2=B2:B6, TEXTJOIN(". ", TRUE, C2:C6), ""), "")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多