如何比较Excel中的两个单元格并以特定格式输出匹配的单元格内容?

如何比较Excel中的两个单元格并以特定格式输出匹配的单元格内容?

我需要一个可以执行以下操作的公式:

  1. 将单元格 A2 与 B 列的全部内容进行比较
  2. 如果找到多个匹配项,则复制包含单元格 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),您就会得到所需的输出。

相关内容