从excel中的范围搜索特定单元格

时间:2014-12-23 08:57:31

标签: excel excel-2007

关于将不同的单元格进行比较,我有一点问题,那就是我需要比较A列中的每个单元格与整个B列,并在相邻的列c单元格中获取指定的找到单元格。

我使用了这个等式:

=IF(ISERROR(MATCH(A61,B:B, 0)), "No Match", "Match on Row " & MATCH(A61,B:B, 0))

这就是结果:

18       001220     No Match
19       001221     No Match
20       001222     No Match
21       001223     No Match
22       001224     No Match
101264   00040      Match on Row 121

请注意,所有数据类型都存储为文本。这是强制性的。

问题是这个公式会跳过一些数据并且不会从列b中收集它们,除非从文本更改为常规或数字,这会损坏我的工作表,因为许多单元格以零开头。

1 个答案:

答案 0 :(得分:0)

  1. 如果您的 lookup_value 可以是文字或数字,但您总是将其作为文字查找,请格式化 lookup_value 使用覆盖两种方案的格式掩码。您的样本数据的大多数似乎是六位数,必要时带有前导零,因此TEXT(A61, "000000;@")应该可以单独保留文本值,并将数字格式化为至少带有前导零的六位数的文本必要时。分号格式前面的零号作为文本;分号后面的@只留下文字。

  2. 通过删除冗余,Excel 2007可以通过IFERROR大幅缩短该公式。

  3. 对于您的样本公式,

    =IFERROR("Match on Row " & MATCH(TEXT(A61, "000000;@"), B:B, 0), "No Match")