2

我有两列数据,上面有一百个名字,我需要找到匹配项。

问题是当第二列上的名称与第一列不完全相同时。很难用一百个名字来匹配它们。

excel中是否有任何公式至少可以对“Setyadi”与“Setiadi”或“Tak Jelan”与“Tak Lejan”之类的数据进行容忍。


感谢您的解决方案,它有效,我编辑了这个,因为我想问更多,

我还有一个问题,你能再帮我一次吗?我有这样的数据,我想根据将 D 列中的名称与 A 列匹配的数字填充 C 列。另一个问题是,我想匹配仅在 E 列中提到的组中的名称,甚至不在同一行。

    A       |  B  |  c  |     D       |  E   |
 Setyadi    |  1  |     |  Setiadi    |  11  |
Tak Jelan   |  2  |     | Tak Lejan   |  11  |
  Gordon    |  3  |     |   Herik     |  12  |
   Alex     |  4  |     |  Goerdon    |  12  |
   Heri     |  5  |     |   Alex      |  12  |

进入

   A        |  B  |  c  |     D       |  E   |
Setyadi     |  1  |  1  |  Setiadi    |  11  |
Tak Jelan   |  2  |  2  | Tak Lejan   |  11  |
 Gordon     |  3  |  5  |   Herik     |  12  |
  Alex      |  4  |  3  |  Goerdon    |  12  |
  Heri      |  5  |  4  |   Alex      |  12  |

我需要的是,我们如何比较 D 列中提到的组中的名称,然后我们可以自动给出 C 列中与 B 列耦合的数字。

提前致谢

4

1 回答 1

4

您可以使用类似 John Walkenbach 的 SOUNDEX() 函数:

http://spreadsheetpage.com/index.php/tip/searching_using_soundex_codes/

然后把代码放到Excel中:

http://www.contextures.com/xlvba01.html

现在,如果你有这些数据:

A         | B        
Setyadi   | Setiadi  
Tak Jelan | Tak Lejan

现在您想在 C1 中添加一个公式,例如:

=SOUNDEX(A1)

并将该公式复制到 C2、D1 和 D2。

现在看看你的数据:

A         | B         | SOUNDEX(ColumnA) | SOUNDEX(ColumnB)
Setyadi   | Setiadi   | S330             | S330
Tak Jelan | Tak Lejan | T245             | T242

请注意 Setyadi 和 Setiadi 是如何完全相同的,因为它们听起来相同,这就是 SOUNDEX 函数的代码返回这样的原因。

现在,当您查看 Tak Jelan 条目时,您会看到相差 3(从 T245 到 T242)。现在,我要做的是创建一个新公式,如果第一个字母相同,则只提取数字并比较它们的接近程度:

=IF(LEFT(C1,1)=LEFT(D1,1),STDEV.P(MID(C1,2,3),MID(D1,2,3)))

然后你可以比较标准偏差。

于 2013-02-05T04:25:48.503 回答