如何获取行 Excel 中的下一个匹配项目
How to get the next matching item in row Excel
我有一个 table 数据,但我正在努力获取该行中的下一个匹配数据。
我尝试了很多选择但都没有成功,每次我都得到相同的解决方案。
有人 help/guide 可以给我更好的解决方案吗?
我有图片可以解释问题:
试试这 2 个公式解决方案,用于 Excel 2010 及以后
1] 在“输出,ID”A13
中,公式向右复制到 C13
并全部向下复制:
=IFERROR(INDEX(A:A,AGGREGATE(15,6,ROW($A:$A)/($D:$H=$K),ROW($A1))),"")
2] 在“输出,日期”D13
,公式复制下来:
=IFERROR(INDEX(:,RIGHT(AGGREGATE(15,6,ROW(A:A)/1%+COLUMN(D:H)/(D:H=K),ROW(A1)),2)),"")
或者,
对 Excel 2019 及以后
使用此单数组 (CSE) 公式
在“输出,ID”A13
中,公式向右复制到 D13
并全部向下复制:
=IFERROR(FILTERXML("<a><b>"&TEXTJOIN("</b><b>",,IF($D:$H=$K,$A:$A&"</b><b>"&$B:$B&"</b><b>"&$C:$C&"</b><b>"&$D:$H,""))&"</b></a>","//b["&(ROW($A1)*4+COLUMN(A))-4&"]"),"")
确认按“Ctrl+Shift+Enter”进入
我有一个 table 数据,但我正在努力获取该行中的下一个匹配数据。 我尝试了很多选择但都没有成功,每次我都得到相同的解决方案。 有人 help/guide 可以给我更好的解决方案吗? 我有图片可以解释问题:
试试这 2 个公式解决方案,用于 Excel 2010 及以后
1] 在“输出,ID”A13
中,公式向右复制到 C13
并全部向下复制:
=IFERROR(INDEX(A:A,AGGREGATE(15,6,ROW($A:$A)/($D:$H=$K),ROW($A1))),"")
2] 在“输出,日期”D13
,公式复制下来:
=IFERROR(INDEX(:,RIGHT(AGGREGATE(15,6,ROW(A:A)/1%+COLUMN(D:H)/(D:H=K),ROW(A1)),2)),"")
或者,
对 Excel 2019 及以后
使用此单数组 (CSE) 公式在“输出,ID”A13
中,公式向右复制到 D13
并全部向下复制:
=IFERROR(FILTERXML("<a><b>"&TEXTJOIN("</b><b>",,IF($D:$H=$K,$A:$A&"</b><b>"&$B:$B&"</b><b>"&$C:$C&"</b><b>"&$D:$H,""))&"</b></a>","//b["&(ROW($A1)*4+COLUMN(A))-4&"]"),"")
确认按“Ctrl+Shift+Enter”进入