不得不说excel有时候很顽固,总变不成自己想要的样子。
在做项目中,碰到如题的问题。比如要将居民的信息导出到excel中,居民的身份证号码因为长度过长(大于10位),excel会自动的将过长的数字串转换成 科学计数法。
可以在身份证号码前加单引号,但复制过去后单引号会被保留。其他在数字串前后加 " " 或" " 或 tab等空白内容都是行不通的,excel会自动去掉这些。除非你在数字串中间加,当然这样就不是我们要的结果了。
终极解决方案:
100821199909091234 |
增加了样式后 可以解决,亲测可行!
另外网上有称增加css样式可行的,找了几个试了下,没找到正确的。
其他自定义单元格格式 样式
mso-number-format:"0" NO Decimals
mso-number-format:"0.000" 3 Decimals
mso-number-format:"#,##0.000" Comma with 3 dec
mso-number-format:"mm/dd/yy" Date7
mso-number-format:"mmmm d, yyyy" Date9
mso-number-format:"m/d/yy h:mm AM/PM" D -T AMPM
mso-number-format:"Short Date" 01/03/1998
mso-number-format:"Medium Date" 01-mar-98
mso-number-format:"d-mmm-yyyy" 01-mar-1998
mso-number-format:"Short Time" 5:16
mso-number-format:"Medium Time" 5:16 am
mso-number-format:"Long Time" 5:16:21:00
mso-number-format:"Percent" Percent - two decimals
mso-number-format:"0%" Percent - no decimals
mso-number-format:"0.E+00" Scientific Notation
mso-number-format:"@" Text
mso-number-format:"# ???/???" Fractions - up to 3 digits (312/943)
mso-number-format:"0022£0022#,##0.00" £12.76
mso-number-format:"#,##0.00_ ;[Red]-#,##0.00 "
2 decimals, negative numbers in red and signed (1.56-1.56)