我需要从数字创建代码。
前。如果我们定义
A as 1
B as 2
...
J as 9
K as 0
如果一个单元格的值为499,那么等效代码" DJJ"应该退还。
答案 0 :(得分:0)
首先,在ASCII表中找到与数字“1”关联的字符:
=CHAR(1)
这将为您提供与ASCII代码1相关联的字符。现在找到A的代码#,然后将其添加到您的结果中:
=CODE("A")
这将为您提供与字母“A”相关联的ASCII码。如果你测试它,你会发现ASCII表有一个特定的顺序。它按字母顺序排列小写字母,按顺序排列数字,按字母顺序排列大写字母(特定字符中随处可见特殊字符)。这个排序允许你找到“A”之后的字母表字母,只需添加1,2等,即:
=CHAR(A1+CODE("A")-1)
这将为您提供与A1中找到的数字相关联的字符,从“A”字符放在ASCII表上的点开始。
最后,假设A1持有3位数字。为了将上述内容添加到一个有凝聚力的公式中,我们只需要将其应用3次,对于单词中的每个字符都应用一次。我们可以使用LEFT,MID和RIGHT函数执行此操作,如下所示:
=CHAR(LEFT(A1)+CODE("A")-1) & CHAR(MID(A1,2,1)+CODE("A")-1) & CHAR(RIGHT(A1)+CODE("A")-1)
首先获取A1中最左边的字符(例如,数字5),然后将其添加到字母“A”的ASCII代码中。然后它返回ASCII表[5 - 1 + CODE(“A”)]中“A”右边4个位置的字符。然后它为A1中的第二个字符(例如,数字6)执行此操作。然后它为A1中最右边的字符(例如,数字0)执行此操作。
此方法没有错误检查;它假定A1始终保持一个3位数字,格式不带小数。
请注意,此方法使0 =到A.我将留给您决定是否要将所有数字向右移动,以便1 = A和0 = K.