学会这几招,轻松搞定领导最爱看的动态数据报表
不知不觉2020就剩最后一个月,接下来的12月相信都是大家最忙的时候,各种年度总结、汇报、答辩述职,这其中更加少不了各种数据统计,分析工作。
不论在哪个公司,一到月底、季末、年底,财务、人事、销售等等业务部都要写各种各样的数据报表,但是领导拿到手却很少仔细看,自己辛苦加班好几天的成果也换不来领导的一句夸奖。
为什么领导不看?
首要原因就是报表太丑,很多人做出来的报表都是简单的数据表格,比如下面这样的,密密麻麻的数据,最后一列汇总计算一下,让调3个地区的销售分析表,交上来就是3张样式一样,数据更换了的表格
而报表最根本的目的是要传达数据信息,而不是单纯展示数据,报表是给人看的,所以好的报表绝对不是枯燥的表格堆叠,而应该是简洁、美观、准确、讲人话的,也就是说报表也讲究“颜值”,而让报表动起来则是提高报表颜值最省力的方法,也是我们说的动态报表
动态报表的作用不光是提升报表颜值,同样也让报表展示的信息更加丰富,同时也省去了很多的重复制表工作。比如上面这样报表,通过报表之间的联动和钻取,以及筛选条件,在一张报表中呈现更多的数据信息,让领导快速了解到数据展现的业务信息。
如何实现动态报表
最常见的方法就是利用Excel切片器和数据透视表做,对于大部分表哥表姐来说,Excel里的数据透视表绝对是报表制作神器,只不过但是步骤有点复杂和繁琐,还得写很多逻辑函数
比如要完成上面这张图,大概的步骤就是这样:
第一步:添加数据数据透视表
第二步:添加辅助列,计算未完成比率
第三步:复制粘贴数据透视表,分别修改为显示总销量和各品牌销售量。
第四步:插入圆环图制作完成进度表,插入柱形图,制作销售对比图
第五步:调整图表位置和切片器格式
如果涉及到的分析纬度更多,做起来步骤更加多。对一部分报表小白来说有些麻烦了,而且如果遇到大数据量的数据表,Excel的卡顿更加让人受不了。
其实更简单的方法是用专业报表工具做,比如FineReport ,界面和Excel类似,但是操作比Excel透视表简单,比方说我们要做下面这样的一个简单的过滤查询动态报表:
第一步,把数据上传到FineReport 或者将FineReport直接与数据库来接取数。把表格样式设计好,把数据列拖拽到单元格中:
第二步:设置参数,FineReport 实现动态报表的原理就是利用参数来过滤图表数据,比如我们要筛选不同地区的数据,就是给地区所在的单元设置一个过滤条件
给单元格设置过滤条件:
第三步添加一个过滤控件,用来存放参数,我们选择使用下拉控件,如下:
点击预览,效果就出来了:
除了这种简单数据列筛选的动态报表,同样的原理,还能做出其他各种类型的动态报表,提高报表展示的效率,下面给大家简单列举几种动态报表的应用技巧:
1、图表联动:图表联动就是在多个图表之间建立关联,比如像下面这种,比如员工名称,其他的订单金额、回款额等图表就会自动关联为该员工的数据,在做员工业绩分析的时候可以用
3、数据钻取:主要是为了实现无限层数据的扩展,展示维度更细的数据。比如地区数据的钻取,点击省份数据,下钻到该省各城市的数据,或者是从部门层级的数据钻取到部门成员的数据
4、动态数据筛选:刚才上面展示的单各筛选条件的动态报表,但是我们实际工作面临的筛选条件更加复杂,比如像月报、周报这种,需要当满足某个条件时,某些查询条件才显示。选择年报,后面的参数框就会自动显示为年份,选择月报,后面的参数框就会自动显示为月份。
5、动态数据列:若数据库中存在两张表,如何实现不同的人根据需要选择不同的表进行查看,从而提高查询效率呢?此时就可以通过设置动态数据列,在控件中输入“订单”或者“销量”,就会分别展示不同报表

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
【鸿蒙开发板试用报告】用OLED板实现FlappyBird小游戏(中)
小伙伴们久等了,在上一篇《【开发板试用报告】用OLED板实现FlappyBird小游戏(上)》中,我们本着拿来主义的原则,成功的让小鸟在OLED屏幕上自由飞翔起来,下面我们将加入按钮交互功能。 这里感谢唐佐林老师的无私分享,利用他开发的按钮组件,开箱即用,节省了大量的开发时间(链接)。首先将按钮组件的初始化函数InitButton搬到我们的主程序中,再写一个按钮事件回调函数Button_Callback,里面加入对逻辑的判断和处理即可。 //按钮事件回调函数 static void Button_Callback(const char* sender, BtnEvent event) { printf("[Button] Button_Callback() : %s -> %d\n", sender, event); if( event == Pressed ) { /* Pressed == 1 按下事件处理代码 */ if(isStarted == 0) { BirdStart(); }else{ BirdFlap(); } } } ...
- 下一篇
跟阿斌一起学鸿蒙(2). Ability vs App?
在进一步实践之前,需要先弄明白一个概念:Ability。 不知道你有没有注意到,使用鸿蒙开发工具DevEco Studio创建项目时,我们选择创建的是一个个Ability。 这是为什么呢? # 1. 鸿蒙OS的定位 这需要从鸿蒙OS的自我定位说起:鸿蒙OS是一个**分布式操作系统**。 ## “单机”操作系统 在我们目前常用的操作系统中,不管是手机还是电脑,App(Application,应用程序),是非常常见的一个概念,是我们解决问题的基本对象。 * 要跟朋友聊天,打开聊天App。 * 要听歌,打开音乐App。 * 要看视频,可以打开各种视频App。 * 要写文档,打开Word或者PPT。 与鸿蒙操作系统不同,这些“单机”操作系统通常是 * 1). 运行在同一类设备上,对于不同类型的设备,通常运行不同的操作系统。 * 2). 设备与设备之间除了是物理上是分隔开的,在操作系统层面上也是分隔开的。 * 3). 设备之间的连接,通常是由需要连接的应用来主动发起,然后经过操作系统通过网络进行连接。 * 4). App应用,是操作系统管理的基本单元。 ## 分布式操作系统 而鸿蒙...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker安装Oracle12C,快速搭建Oracle学习环境
- SpringBoot2全家桶,快速入门学习开发网站教程
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- CentOS关闭SELinux安全模块
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Hadoop3单机部署,实现最简伪集群