例子
{=TEXTJOIN("",真正的,如果(3:加元加元11美元=E3,B美元3:B 11美元,"")}
通用的公式
{=TEXTJOIN(分隔符,真正的,如果(ConditionRange=条件,范围,"")}
请注意:这是一个数组公式.不打{}括号。持有Ctrl+转变然后按输入而在编辑模式创建一个数组公式.对于Mac,使用⌘+转变+返回.
- 范围-这是我们想要连接在一起的值的范围。
- 分隔符-这是分隔符值,我们希望在连接中使用它来分隔值。如果不想使用分隔符,请使用空引号。
- ConditionRange-这是值的范围,我们将使用它来测试是否从我们的项目连接范围.
- 条件-这是测试条件。
它所做的
这个公式将根据另一个范围中的条件有条件地连接一个范围。
它是如何工作的
如果(ConditionRange =条件、范围、" ")将创建一个包含范围当它满足给定条件时。在我们的示例中,这将创建以下数组。
{";“E”;“X”;“”;“C”;“”;“E”;“L”;“"}
TEXTJOIN(分隔符,真的,数组)是否将个别项目连接在数组把他们和被选中的人分开分隔符.使用真正的因为中间参数将跳过数组中的任何空白单元格。在我们的例子中TEXTJOIN(" ",真的,{”;“E”;“X”;“”;“C”;“”;“E”;“L”;"})结果EXCEL!
嗨,约翰,这解决了一个类似的问题,我试图解决自己的excel电子表格。我不熟悉数组公式。你可以为那些刚接触数组公式的人介绍一下如何有条件地连接A Range指令吗?
需要在输出中加上逗号。
请帮助。
使用分隔符
”、“
我有这个机会,但得到了一个“名字”错误代码。我试着下载你的例子文件,它也有同样的错误…?
我尝试了这个,范围和条件是超过100k记录和接收#VALUE!结果。
不能100%确定,但可能是因为单元格只能包含32k个字符。
它根本不起作用,甚至你的例子也不行。我想知道为什么
你用Ctrl Shift Enter创建公式了吗?
现在工作! !我是说我的错误!(是的,我错过了那个细节)就是这样!Y
你是我的新英雄!谢谢先生。你真的帮我节省了很多工作,使用VBA没有意义
是的,在Excel中通常有很多方法,这取决于具体的情况。
很高兴今天我能成为“英雄”
辉煌!我不熟悉数组公式。(我也兴奋地冲了进去,没有阅读ctrl+shift+enter指令)。
最终我如愿以偿地完成了任务。
谢谢!