Excel函数不能区分某些阿拉伯字母

时间:2019-06-13 14:04:17

标签: excel excel-formula match vlookup arabic

我在excel中有一张桌子,上面有一些带有ID号的阿拉伯字母/单词;这是一个包含两列的表格:

ID          Letter
ء           1
2           آ
3           أ
4           إ
5           لا
6           لإ
7           ئ
8           ا
9           ـا
10          لأ
11          ـلا
12          ب
13          بـ
14          ـب
15           ـبـ

我想要的是在另一张纸上输入字母后能够检索字母的ID。 我已经使用了match和vlookup excel函数,它们似乎工作正常。但是,问题在于它不能正确识别字母。

So, for example, if I enter ء I get 1 - which is correct.
If I enter آ I get 2 - which is correct.
If I enter أ I get 2 - which is incorrect, it should return 3
If I enter إ I get 2 - which is incorrect, it should return 4
If I enter ب I get 12 - which is correct.
If I enter بـ I get 13 - which is correct.
If I enter ـب I get 13 - which is incorrect, it should return 14
If I enter ـبـ I get 12 - which is incorrect, it should return 15

我用于vlookup的公式:

=VLOOKUP(A2; Full!$A$3:$E$145; 2; FALSE)

其中:A2有我输入的字母 Full!$A$3:$E$145是我的数据表 2是我要从中获取数据的列号 False因为我想要一个完全匹配的

可能是什么问题?

2 个答案:

答案 0 :(得分:2)

我敢肯定,更聪明的人会想出一些更优雅的东西,但这是一个适用于任意3个字符或更少字符的示例:

  1. 向表中添加第六列,并用以下公式填充:

    !friends.any? { |friend| !friend.insane? }
    

(我假设列=CHOOSE(LEN(B2),UNICODE(B2),UNICODE(B2) & UNICODE(MID(B2,2,1)),UNICODE(B2) & UNICODE(MID(B2,2,1)) & UNICODE(RIGHT(B2,1))) 是表中阿拉伯文本的位置)

  1. 然后使用以下公式获取表中的行:

    B

(其中=MATCH(CHOOSE(LEN(A2),UNICODE(A2),UNICODE(A2) & UNICODE(MID(A2,2,1)),UNICODE(A2) & UNICODE(MID(A2,2,1)) & UNICODE(RIGHT(A2,1))),Full!F$2:F$16,0) 是您输入查找文本的位置,A2是在步骤1中插入公式的列)

匹配后,您可以使用Full!F$2:F$16检索所需的任何数据。

答案 1 :(得分:0)

您可以使用UNICODE()公式提供可以正确比较的ID。

我在“完整”工作表上创建了一个新的A列(标识现在移至B列,阿拉伯字母移至C列),A列的公式如下,对于工作表Full中的单元格A25如下:

=UNICODE(C25)

然后检索ID的公式为:

=VLOOKUP(UNICODE(A2); Full!$A$3:$B$145; 2; FALSE)

在A2处放置您想知道ID的阿拉伯字母。