Ⅰ问题的出现:sum(range)的时候发现尽管这个区域里面有了很多值,但是结果还是0,为什么呢?发现这些单元格的左上都有个绿色的三角,鼠标移上去才知道“此单元格中的数字为文本格式,或者其前面有撇号。”
Ⅱ原因:通常我们认为文本型的数字是不能作求和的,只能通过下面几种方法来把文本型的数字转化为数字:
1.在任意一个空白单元格中输入数值1,选中该单元格,执行复制操作,然后选中需要转换的单元格(区域),执行“编辑、选择性粘贴”命令,打开“选择性粘贴”对话框,选中其中的“乘”选项后,确定返回即可(这个方法可用于所有版本的Excel中。);
2.如果你使用的是Excel 2002或Excel 2003,则可选中需要转换单元格(区域),单元格旁边会出现一个智能标记,按一下这个智能标记,在随后弹出的下拉列表中选中“转换为数字”选项,即可快速完成转换;
3.双击每个单元格,或者使用VBA遍历整个区域分别再指定一次同样的值(效率低下)。
Ⅲ解决方法:其实不然,日前在做一个Excel报表组件的时候发现可以使用=SUMPRODUCT(BK8:BR36*1)完成对文本型数字的求和计算。推而广之,我想文本型的数字应该也是可以参加其他运算的,甚至排序。这样做的好处是在对Excel编程的时候可以轻松的解决一些文本型数值的小计求和,因为大家都知道文本型的数据写入Excel是最快的方法之一了。
不知道对大家有没有帮助,如果有什么不妥还望大家积极提出批评,茅草屋刚刚搭建,还请各位乡亲多多捧场*^_^*。