zoukankan      html  css  js  c++  java
  • EBS: RTF+XML报表导出EXCEL数值转文本

    在EBS系统中新做一个报表导出EXCEL文件,

    工号以 ”0“开头,导出excel会变成整形把”0“全部去掉。

    后来在RTF模板中增加:

      <fo:bidi-override direction="ltr" unicode-bidi="bidi-override"><?EMPLOYEE_CODE?> </fo:bidi-override> 

    格式化为文本,这样保留了自然数前面的“0”。

    解决一个问题。引发另一个问题。

    用户反映导出来的资料,不能通过工号引用姓名过来。

    处理EXCEL资料时常会遇到一些数值不能运算,因为它存不可见的未知字符 ,如:"?" 即 char(63)  或换行符 char(10) ,char(13), char(32) 等等。 

    假设单元格 A1 = 00102 

    在EXCEL中 用LENB(A1)  返回 值为7 ,怎么这大呢?目测应该是5。

    这说它隐藏着两个字符,如:换行符、表格符。

    EXCEL里 CODE(A1) 返回 第一个字符的 ASCII 的值为“63”,或将值 复制到sql server 分析器中, 明显地显示

    字符串前后各有一个空格符,用SELECT UNICODE(' ')  查 UNICODE 值,返回 63. 对照 ASCII表,是一个 问号“?”

    知道即原因,就容易解决问题。

    在EXCEL中通过截取字符函数 重新取值排除不可见符【char(63)】,

    在B1单元格的公式:  =MID(A1,2,LENB(A1)-2) 

    含意: 从第二位开始截取,截取长度为 总长度减2 。

    优质生活从拆开始
  • 相关阅读:
    2014-3-10 时间都去哪了,还没好好感受年轻就老了
    2014-3-4 思杨昨天已经顺利到老家 --------- 回忆思杨之2--“叫你不穿鞋鞋”
    2014-3-4 鬼脸笑笑的思杨
    路由
    视图
    请求与响应
    序列化组件
    APIView源码分析
    CBV源码分析
    DRF入门规范
  • 原文地址:https://www.cnblogs.com/samrv/p/15248349.html
Copyright © 2011-2022 走看看