Excel 数字转化成以文本形式存储的数字
看到这个标题有点惊异吧,一般情况下都是问怎样把“以文本形式存储的数字”转化成“一般数字”,这下怎么倒过来了,是的,不过举一反三,这样遇到问题了才会游刃有余呀。往下看吧。
最近使用一个OA系统,其中的数据导入和导出比较方便,但是在进行数字方面的导入时出了些问题,表征如下:
1、导入时提示一切正常
2、数字部分在“查看数据源时”就没有显示,而事实是有的
3、采用系统建议的复制新文件法无效
详细分析:
1、数字部分当以'(单引号)+数字的形式输入时,形成以文本形式存储的数字时系统是可以接受的
2、在1的基础上得出以下结论,由于系统数据采用数据库结构,故存在数据类型问题,而用excel 表本身的数据类型和此OA系统用的数据库类型(估计是类似dBaseIV的数据库)是不匹配的,所以只能采用文本方式导入
3、到此,问题明了,解决方法也浮出水面,只要将所有的数字装换成以文本形式存储的数字即可。
解决方法:
其实这个才是本次问题的重点,平时输入时只要用以'(单引号)+数字就可以形成以文本形式存储的数字,而对于以文本形式存储的数字到普通数字的转换是很简单的,只要大片选中再单击“!”符号中的“转换为数字即可”。但是,现在我们要解决的问题是将数字转换为“以文本形式存储的数字”,一个一个加单引号是不现实的,而用文本组合符号的方式来加一个单引号也是不行(Failed),其他方式诸如单元格格式、转换文件类型等等,都无效(试验得好辛苦,凡是能想到的都用上了)。最后,经过无数次的失败总结出以下方法:(试验结果显示简单且易行)
前提:批量、转换、数字到以文本形式存储的数字
1、正常输入所有数字数据
2、在新的一列中用函数TEXT转换数字为文本,如=TEXTA1,0)
3、复制、选择性粘贴、“值”,取消共识,保留公式结果,这是令人兴奋的小绿箭头已经出现了
4、替换原来的数字,OK
====================================================================================
我的补充:
1、正常输入所有数字数据(比如在D1:D10)
2、在新的一列(比如是G列)中用函数TEXT转换数字为文本,如 =TEXTD1,0) ,将其他D1:D10进行公式复制
3、复制新得到的(G1:G10)、再在(G1:G10)区域右击【选择性粘贴】、数值,这时令人兴奋的小绿箭头已经出现了
4、再次复制新得到的(G1:G10)替换原来的D1:D10中的数字,OK
把excel表导入SQLServer2000中时,excel中的数字有两种形式:以文本存储数字(绿色三角)、常规,当导入的时候有绿色三角的就没有问题,没有的就表示是Null,在网上找了找,找到了上面的文章(最后没用)
我的解决办法是:在Access中建立相同的表结构,然后通过粘贴复制把excel中的数据复制到Access中,然后再把Access导入到SQLServer2000中。
转载于:https://blog.51cto.com/yin123/423644