注意那个array 的注释, 是GB2312 每个声母开始时候的第一个音 ,完全可以 使用公式 code 和 CHAR 完成此片代码. A1 中随便输入一个常用汉字,将此片代码粘贴到A2 ,看看效果 =CHAR(64+MATCH(CODE(A1),{45217,45253,45761,46318,46826,47010,47297,47614,48119,48119,49062,49324,49896,50371,50614,50622,50906,51387,51446,52218,52698,52698,52698,52980,53689,54481},1)) 此函数的问题, 1 如果A1 内容为字符串,或者非常用汉字,则出错, 简易解决如下,=IF(AND(CODE(A1)>=45217,CODE(A1)<54481),CHAR(64+MATCH(CODE(A1),{45217,45253,45761,46318,46826,47010,47297,47614,48119,48119,49062,49324,49896,50371,50614,50622,50906,51387,51446,52218,52698,52698,52698,52980,53689,54481},1)),A1) 2 不能在一个公式中处理字符串, 因为没有像 sum 之类的文本函数可以处理字符串数组的合并. 还得用自定义函数,恶
[此贴子已经被作者于2007-4-28 1:40:16编辑过] |