excel公式列表字符串的子串

时间:2018-04-02 11:55:44

标签: excel excel-formula

我有两列包含大量列表。我的目标是使用条件格式来突出显示A列中的单元格(如果它们也列在D列中(重复值))。我通过使用公式

计算出来
  

= VLOOKUP($ A1,$ d:$ d,1,0)= $ A1

当A列中的个体细胞有时具有比其D列重复的更多字符时,会发生并发症。我仍然需要A列中的单元格来突出显示。

例如,

  • D4显示FA666610F8009。我需要它来识别
  • 中的两个重复项
  • A3,显示FA666610F8009和
  • A5,显示 FA666610F8009RS56。

我努力寻找合适的公式变异,但我失败了。下面链接的excel文件是我自己可以得到的。

Excel worksheet link

5 个答案:

答案 0 :(得分:1)

您可以使用以下公式。

  • 在文件中选择范围A2:A45

  • conditional formatting中应用以下公式:

=ISNUMBER(LOOKUP(2^15,SEARCH($D$2:$D$22,A2,1)))

它将匹配子字符串并突出显示所需的子单元格。

答案 1 :(得分:0)

使用公式方法MATCH和ISERROR。像

这样的东西
=AND(NOT(ISERROR(MATCH(A1, $D:$D, 0))), NOT(A1=""))

这将查看是否可以找到该值的匹配项。如果它不能返回错误,因为我们只想要匹配,我们将反转真/假结果。

https://support.office.com/en-ie/article/match-function-e8dffd45-c762-47d6-bf89-533f4a37673a

答案 2 :(得分:0)

试试这个

=OR(NOT(ISNA(VLOOKUP(A1,$D:$D,1,FALSE))),NOT(ISNA(VLOOKUP("*"&D1&"*",$A:$A,1,FALSE))))

我已添加第二个vlookup,因此它会在您的情况下返回true。

答案 3 :(得分:0)

这类似于Good way to compare and highlight thousands of rows in VBA

的问题

那里有两个答案可以轻松修改以适应。我在该线程的答案可选地允许您输出重复的列表。

我等到我澄清上面的评论,然后在这里发布修改后的代码。

答案 4 :(得分:0)

如果您不想使用VBA,最有效的方法是在A列中选择要应用格式的范围,并使用以下公式:

=OR(LEFT(A3,13)=[FIRSTROW]:[LASTROW])

...其中FIRSTROW是行D中主列表中的第一个单元格,而LASTROW是最后一个单元格。

不要使用整列引用来执行此操作。实际上,我建议你将两个列表分成单独的Excel表,并将一个CF_Master的命名范围分配给D行中表的列,并在CF公式中使用该名称,即:

=OR(LEFT(A3,13)=CF_Master)