解决导出Excel后0丢失的问题
需求背景
今天我们来看一个比较有价值的需求,这个需求中提到的一系列问题我们可能也会遇到并感到难以解决。好,闲话少叙,看一下具体需求:
1、 报表中的0.XXX导出Excel后0丢失,变成了.XXX,如0.5变成.5;
2、 报表数据集中数据有存在空和0的数据,在报表显示的时候要求空值不显示,0值显示0,当前都显示为0;
3、 横向和纵向分组后,要求没有数据记录的单元格显示为空
4、 整数只显示整数,小数保留一位小数
问题分析
1、 由于导出的Excel单元格类型为“自定义”,该格式下的首0会自动截去,这是正常现象,当然我们可以通过设置显示格式来解决,稍后我们看具体实现;
2、 目前报表分组后对于空值和0值的显示结果是相同的,即都为0,这点我们可以通过表达式判断来解决,稍后看具体实现;
3、 对于横向纵向分组交叉后在数据集中没有记录的单元格,要显示为空,我们也可以通过表达式判断来解决。
接下来,我们看一下具体实现。
实现步骤
我们来看一下数据的情况,涵盖比较全面:
我们在来看一下按照正常做法写表达式后的显示结果:
接下来我们看一下表达式和显示格式是如何设置的:
B1:=ds1.group(day)
A2:=ds1.group(name)
B2:=if(ds1.day==B1 && ds1.name==A2,if(ds1.num==null,”",ds1.sum(num)),”")
B2显示格式表达式:if(isnumber(str(value())),if(value()==int(value()),”#0″,”#0.0″),”#”)
这样设置后的显示效果如下:
导出的Excel效果如下:
我们可以看到,完全和页面上显示的相同。至此我们已经实现了开篇中提到的所有需求。
文章来至:http://www.runqian.com.cn/archives/4601.html/
解决导出Excel后0丢失的问题相关推荐
- java excel 0没了,解决导出Excel后0丢失的问题
需求背景 1.报表中的0.XXX导出Excel后0丢失,变成了.XXX,如0.5变成.5: 2.报表数据集中数据有存在空和0的数据,在报表显示的时候要求空值不显示,0值显示0,当前都显示为0: 3.横 ...
- 数据库导出EXCEL后0丢失
情景在现: 在一个数据丢失的处理问题中,去生产环境去取数据,导出类型为excel,结果发现导出的某一列中数据前面的0都 自动的消失了. 解决发法: 1.导出工具为Dbvisualizer ...
- 解决导出CSV后在EXCEL打开纯数字前面0丢失问题
解决导出CSV后在EXCEL打开纯数字前面0丢失问题 参考文章: (1)解决导出CSV后在EXCEL打开纯数字前面0丢失问题 (2)https://www.cnblogs.com/linn/p/102 ...
- 填报表导出excel后不可写的单元格处于锁定状态
填报表单元格分为可写和不可写两种状态,当填报表在web上展现的时候可写单元格可以进行数据填报和修改,非可写单元格不可操作. 报表导出为excel时,润乾导出excel包默认情况下不对excel单 ...
- 解决导出Excel报COM类工厂错误的办法--修改版
解决导出Excel报COM类工厂错误的办法 1.问题现象 (1)第一种:销售模板的一些报表(如日报.月报等)导出时提示如下信息 (2)第二种:有些模块的一些报表导出时,没有反应,前后台也没报错 如成本 ...
- 博奥导出工程项目电子表格_博奥清单导出Excel后单位批量替换
博奥清单V17中,单位平方米和立方米的数字均为上标显示.为使打印出来后易于分辨,应BOSS要求,在导出Excel后将其修改为"m2"和"m3". VBS批量修改 ...
- C# 导入excel数据,解决关闭excel后不能释放资源的问题
C# 导入excel数据,解决关闭excel后不能释放资源的问题 参考文章: (1)C# 导入excel数据,解决关闭excel后不能释放资源的问题 (2)https://www.cnblogs.co ...
- Oracle 对某一字段下杂乱的内容进行 换行 空格 回车等操作 导出Excel后保留单元格内换行
Oracle 对某一字段下杂乱的内容进行 换行 空格 回车等操作 导出Excel后保留单元格内换行 效果图如下 修改前 修改后: 瞬间整洁多了 心情也好了 ;导出Excel 单元格也会带换行 sql如 ...
- esaypoi导出excel后office打开报错
** esaypoi导出excel后office打开报错 ** 使用esaypoi导出excel后office打开报错,提示 "Excel 无法打开文件"导出表格 (1).xlsx ...
最新文章
- JUnit 5 –下一代JUnit的初步了解
- 冒泡排序 自带时间复杂度测试
- linux 安装 xpdf csdn,Centos安装xpdf 解析pdf文件
- linux uuid挂载磁盘_linux下mount硬盘步骤,含UUID mount办法
- Django中的 返回json对象的方式
- artsy 爬虫_让我们得到Artsy! 使用神经网络创建自定义Snapchat过滤器!
- k2 abc 官改固件下载_abc分析,k表示聚类
- Win10技术预览版
- linux xv命令什么意思,Linux部分命令解释(命令缩写代表什么意思)
- 橙色云再度入选中国科学院发布的《互联网周刊》
- 2021年度学习总结
- 行走的励志君——选择和努力哪个更重要
- 低客单价的商品怎样做运营、怎么样做优化、以及怎样做推广
- 实数系基本定理证明第①波
- AJAX设计模式之Lightbox---图片和网页外、连 flash、影片都可以显示在 Lightbox 弹出的方框里面
- 超小白用PANDA处理DTI数据的心酸历程笔记
- 64位系统安装32位打印机驱动
- 利用特征根方程实现通项公式与递推关系的互换
- nginx实现https转发
- Java中LinkedList详解