Excel:如何使用数组连接criteread节旁边的string(If函数)

今天是个好日子

我有一个Excel工作表在两列的波纹pipe。 我知道如何使用一个数组,如果函数与总和,以满足在{=sum(if(A1:A5="YES",B1:B5)} ,如何去符合criterea列旁边的所有值关于如何使用string进行连接,以便它们显示如下的结果

谢谢你的帮助

Excel数组

编辑:我知道有一个简单的VBA解决scheme,但想知道是否有一个优秀的方式,因为有一个简单的解决scheme,如果它是值,而不是string。

如果我假设你不想要相对容易的VBA解决scheme,通过初始列表recursion并连接答案,则可以将以下内容放入B8:

=IFERROR(INDEX(Sheet1!$A$1:$A$6,SMALL(IF(Sheet1!$B$1:$B$6=$A8,ROW(Sheet1!$B$1:$B$6)-ROW(Sheet1!$B$1)+1),COLUMNS($B1:B1))),"")

你将不得不拖动它,因为它会把它们放在不同的列中,但是之后你应该可以把它们连接成一个列。

input时必须按住CtrlShift键 ,因为它是一个数组公式。

  • 激活选项中的迭代。 最大迭代次数必须等于或大于行数。
  • Add =IF(D1=100;1;D1+1)到单元D1
  • 这是公式在单元格E1为斯塔克房子: =IF(D1=1;"";IF(D1-1>COUNTIF(B:B;"Stark");E1;E1&INDEX(A$1:A$100;SMALL(IF(B$1:B$100="Stark";ROW($1:$100));D1-1))))

(我希望我能正确地获得这些function的英文名字。)

我错过了一个信息:你必须input函数作为数组函数。

感谢您访问http://www.excelformeln.de/formeln.html?welcher=155

真的很努力地把它做好,最后得到一个关于如何连接整列的stackoverflow问题的答案。

通过B对数据进行sorting,然后使用= TRANSPOSE(A4:A6)

然后用函数F9取得这一行= {“Mansion1”,“Mansion 2”,“House 3”}

复制并连接,只是删除{

但是,这是不理想的,因为我想要使用这个数据集是2500+线:(手动做到这一点虽:( :(但会尝试以上的答案,以备将来使用。