基本前提是我想创建一个列,输出其关联行的前 3-4 个空白单元格的列名。我对它在理论上的工作原理有一个了解。我可以判断出我的实际电子表格中的单元格确实是空的,因为我可以有条件地格式化它们,但我没有脚本或公式技能来实际在新列中输出信息。
这个问题的解决方案将帮助很多老师和学生更好地跟踪他们的进度,所以我真的很感激他们的帮助!
我尝试在那里使用新代码 - 它确实显示了第一个的 3 个列名,但是当我复制该单元格并选择该列中的所有其他单元格并粘贴时,它的行为不一样。我做了几个不同的情况,希望这可以帮助解开它。我应该用不同的方式来做吗?
答案1
如果您有 Office 365 Excel,请使用 TEXTJOIN 作为数组公式”
=TEXTJOIN(", ",TRUE,IF(B2:I2="",$B$1:$I$1,""))
作为数组公式,退出编辑模式时必须使用 Ctrl-Shift-Enter 而不是 Enter 输入。
限制返回的次数变得很棘手:
=TEXTJOIN(", ",TRUE,IF(B2:INDEX(B2:I2,AGGREGATE(15,6,(COLUMN(B2:I2)-MIN(COLUMN(B2:I2))+1)/(B2:I2=""),MIN(3,SUMPRODUCT(--(B2:I2 = "")))))="",$B$1:INDEX($B$1:$I$1,AGGREGATE(15,6,(COLUMN(B2:I2)-MIN(COLUMN(B2:I2))+1)/(B2:I2=""),MIN(3,SUMPRODUCT(--(B2:I2 = ""))))),""))
仍然是数组公式。我放置了两个地方3
,表示要返回的最大空白数。