实际的工作中,填写序列号的地方非常的多,如果手动去处理,非常的麻烦,是否可以用函数公式来解决了?
一、字母序列。
字母A,ASCII码的值是65,转换成二进制就是01000001。我们可以验证一下,前面那个1的权重是2^6,后面那个1的权重是2^0,所以01000001转换成十进制就是1*2^6+1*2^0=65,是正确的。字母B,ASCII码的值是66,转换成二。
目的:生成字母序列(大写、小写)。
几个常见字母的ASCII码大小:“A”为65;“a”为97;“0”为 48。
方法:
在目标单元格中输入公式:=CHAR(ROW(A65))、=CHAR(ROW(A97))。
解读:
1、大写字母A的ASCII码为65,A的ascii码值是多少二进制,利用函数ROW函数获取单元格A65的行号,及字母A的ASCII码,然后利用函数CHAR转为为对应的字母。
2、利用ROW函数获取行号的目的在于变量为动态值。便于填充。
二、星期序列(中文、英文)。
目的:根据日期快速的填充星期。
方法:
在目标单元格中输入公式:=TEXT(A3,"aaaa")、=TEXT(A3,"dddd")。
已知字母A的ASCII码是01000001,则英文字母E的ASCII码是01000101。ASCII码表中,E在A后面第4位,E的ASCII码=01000001(二进制)+4(十进制)=01000101(二进制)。后三位001变成101是因为这是二进制的运算,逢
三、中文大写数字。
“a”的ASCII值为97/61H;(十进制表示/16进制表示);“Z”的ASCII值为90/5AH;(十进制表示/16进制表示);“X”的ASCII值为88/58H;(十进制表示/16进制表示);其实知道了“A”和“a”的ASCII值,就可以选出。
目的:根据对应的阿拉伯数字生成中文大写数字。
方法:
在目标单元格总输入公式:=TEXT(A3,"[dbnum2]")。
常见ASCII码的大小规则:0~9<A~Z<a~z。1、数字比字母要小。如 “7”<“F”。2、数字0比数字9要小,并按0到9顺序递增。如 “3”<“8”。3、字母A比字母Z要小,并按A到Z顺序递增。如“A”<“Z”。