温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

BeX5报表开发中Excel格式修改的一个小问题

发布时间:2020-08-09 15:25:17 阅读:991 作者:googlingman 栏目:软件技术
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

问题

    简单说一下吧。编程时有些问题看起来很简单,但想与做往往就是两回事。计算机编程正是具有这个特点。

    目前在修改基于BeX5 3.6的报表格式。使用的自然是report组件,切换到报表设计状态后,使用EXCEL的常规设置方式格式——带千分位和人民币符号,去掉小数问题,感觉是没有问题的。但是,先后使用了货币格式,数字格式,会计专用等格式,运行结果都是不变;即都是默认的带有两位小数,且显示形式是一长串数字,阅读起来相当难看。

    在官方论坛看搜索,根本不存在相应的问答——本来就很简单的嘛!此问题花费了仅一个小时——解决不了!?由此我再次想起“程序猿”的美名......

    算了,先不管它了!把软件新版本安装到客户回来,感觉舒了一口气!闲时,又想起早晨那个问题。不觉得想起了EXCEL宏录制问题——通过宏代码当然可以轻松观察到数字的各种格式。接着,分析了一个report组件对应的xml文件中那个格式部分对应的代码。估计外部EXCEL宏代码格式可能与之通用。

试验

    开始试验。在外部EXCEL得到的宏录制代码如下:

    Range("A1:A7").Select

    Selection.NumberFormatLocal = "¥#,##0;¥-#,##0"

    把report组件对应的内容文件TradeNature.xml打开,观察到如下:

  <Style ss:ID="s50" ss:Name="千位分隔">

   <NumberFormat ss:Format="_-* #,##0.00_-;\-* #,##0.00_-;_-* &quot;-&quot;??_-;_-@_-"/>

  </Style>

    尝试修改成如下:

  <Style ss:ID="s50" ss:Name="千位分隔">

   <NumberFormat ss:Format"¥#,##0;¥-#,##0"/>

  </Style>

结果

    成功!说实在话,尽管EXCEL教学10多年了,对于其复杂的数字格式,特别是后台代码格式,还没有作细致分析。不知report组件本身存在BUG还是怎么的?是否反复修改了数字格式后其不会完全覆盖?这样的话,可以算是该组件的一个BUG了。接下来有空时再详细试验分析一下吧。

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI

开发者交流群×