Excel函数不区分某些阿拉伯字母
我有一个excel表格,里面有一些阿拉伯字母/单词及其id号;这是一个由两列组成的表:Excel函数不区分某些阿拉伯字母,excel,excel-formula,match,vlookup,arabic,Excel,Excel Formula,Match,Vlookup,Arabic,我有一个excel表格,里面有一些阿拉伯字母/单词及其id号;这是一个由两列组成的表: ID Letter ء 1 2 آ 3 أ 4 إ 5 لا 6 لإ 7 ئ 8 ا 9 ـا 10 لأ 11 ـلا 12 ب 13 ب
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
有我输入的字母
满了$A$3:$E$145
是包含我的数据的表格
2
是我要从中获取数据的列的编号
False
因为我需要精确匹配
有什么问题吗?我相信更聪明的人会想出更优雅的东西,但这里有一个适用于任何长度为3个或更少字符的示例:
=CHOOSE(LEN(B2),UNICODE(B2),UNICODE(B2) & UNICODE(MID(B2,2,1)),UNICODE(B2) & UNICODE(MID(B2,2,1)) & UNICODE(RIGHT(B2,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
是输入查找文本的位置,Full!F$2:F$16
是步骤1中插入公式的列)
一旦找到匹配项,就可以使用索引
检索所需的任何数据。可以使用UNICODE()公式提供可以正确比较的id
我在工作表“Full”上创建了一个新的a列(id现在移动到B列,阿拉伯语字母移动到C列),a列的公式如下所示,用于工作表Full中的单元格A25:
=UNICODE(C25)
那么检索id的公式是:
=VLOOKUP(UNICODE(A2); Full!$A$3:$B$145; 2; FALSE)
其中A2是你想知道id的阿拉伯字母所在的位置。你的公式是什么?我编辑了这个问题以包含这些信息我不会说也不会写阿拉伯语,但我知道同一个字符使用不同的字形,这取决于它在单词中的位置或它自己。这会导致问题吗?(即显示了某个标志符号,但Excel会查找“独立”标志符号?)我认为这可能是问题的原因,但我如何解决它?例如,第二个独立的阿拉伯文字母是ب。但在阿拉伯语中,字母可以连接起来,因此单词开头的同一个字母会转换为بـ,其中会添加一个额外的字母或图示符(看起来像是添加了下划线)。而在一个单词的结尾,你会发现这个字母看起来像: ب,它们的符号在前面。当字母在一个词的中间时,它在前后都有一个字形:α-两个快速问题:1)你是否愿意拥有一个辅助列?2) 这个问题是否也出现在单词上,还是仅出现在单个字符上?