![Excel - 使用索引查找多个相同的值并从另一列返回多个值](https://linux22.com/image/1625334/Excel%20-%20%E4%BD%BF%E7%94%A8%E7%B4%A2%E5%BC%95%E6%9F%A5%E6%89%BE%E5%A4%9A%E4%B8%AA%E7%9B%B8%E5%90%8C%E7%9A%84%E5%80%BC%E5%B9%B6%E4%BB%8E%E5%8F%A6%E4%B8%80%E5%88%97%E8%BF%94%E5%9B%9E%E5%A4%9A%E4%B8%AA%E5%80%BC.png)
答案1
我认为如果没有 VBA 或相当复杂的公式,您就无法复制所需的布局;如果您在表中添加一个步骤,它可能会中断。
但是,如果您想将每个函数的步骤放入单个单元格中(每个步骤之间用换行符分隔,那么工作表,你可以使用,例如:
=JOIN(CHAR(10), FILTER(Sheet2!$B$2:$B$5,A2=Sheet2!$A$2:$A$5))
指示
用户表
在 Excel 2016 中,如果我没记错的话,它有这个TEXTJOIN
功能,但没有这个FILTER
功能,尝试一下:
=TEXTJOIN(CHAR(10),TRUE,INDEX(tblSteps[Steps],AGGREGATE(15,6,1/(tblSteps[Function Name]=C4)*ROW(tblSteps) - ROW(tblSteps[#Headers]),ROW(INDEX($A:$A,1,1):INDEX($A:$A,COUNTIF(tblSteps[Function Name],C4))))))
如果您的 Excel 版本中没有动态数组,则可能需要输入ctrl+shift+enter
和/或使用以下变体:
=TEXTJOIN(CHAR(10),TRUE,INDEX(tblSteps[Steps],N(IF(1,AGGREGATE(15,6,1/(tblSteps[Function Name]=C4)*ROW(tblSteps) - ROW(tblSteps[#Headers]),ROW(INDEX($A:$A,1,1):INDEX($A:$A,COUNTIF(tblSteps[Function Name],C4))))))))