我需要一个可以执行以下操作的公式:
- 将单元格 A2 与 B 列的全部内容进行比较
- 如果找到多个匹配项,则复制包含单元格 A2 内容的匹配结果并以特定格式输出到单元格 D 中(需要在每个文件名之间用“|/”分隔匹配的结果)。还需要检查是否继续在 B 列中查找,直到在 B 列中找不到更多与单元格 A2 匹配的内容。
例如:
- B 列中查找的 P/N 为:DD0110LXSC-DRY
- 要查找的列是全部 B 列。
- 公式开始查看 B1;由于内容包含“DD0110LXSC-DRY”,因此将“DD0110LXSC-DRY_01.jpg”复制到单元格 D2。
- 继续将 DD0110LXSC-DRY 与单元格 B3 以及下面的单元格进行比较,直到所有单元格内容中都不再有“DD0110LXSC-DRY”。
样本:
(A) (B) (C)
P/N File Name formula
DD0110LXSC-DRY DD0110LXSC-DRY_01.jpg DD0110LXSC-DRY_01.jpg|/DD0110LXSC-DRY_02.jpg|/ DD0110LXSC-DRY_03.jpg|/ DD0110LXSC-DRY_04.jpg|/ DD0110LXSC-DRY_05.jpg|/ DD0110LXSC-DRY_06.jpg
DD0110LXSC-DRY_02.jpg
DD0110LXSC-DRY_03.jpg
DD0110LXSC-DRY_04.jpg
DD0110LXSC-DRY_05.jpg
DD0110LXSC-DRY_06.jpg
DD0204BMWMC DD0204BMWMC_02.jpg
C列的公式:
= concatenate(B2,"|/",B3,"|/",B4,"|/",B5,"|/",B6,"|/",B7)
答案1
选择要查找的行或列,然后复制。按Ctrl+F并粘贴您选择的行/列。突出显示要查看的列,然后单击找到所有。
如果你想缩小搜索范围,你可以选择选项在 ctrl+F 下。
答案2
根据您的示例:您的数据就像一个数据透视表输出,您只需要检查匹配项直到第一列中的下一个条目(并且所有这些都是匹配项),而不是整个第二列。
我的答案是针对上述场景的解决方案,如果您的数据没有按上述方式排序,那么您要么需要使用复杂的数组公式,要么使用 VBA。
解决方案:
- 首先,你需要填写第一列的所有空白单元格(指导是这里)
- C列中的公式:
=IF(A2=A1,C1&"|/","")&B2
- 并且您需要在 D 列中添加一个辅助列:
=A2<>A3
,它将告诉您实际行是否是相同 P/N 的最后一行,只需对其进行过滤(TRUE),您就会得到所需的输出。