2.1.5 快速实现业务报表开发
业务报表的开发与维护是企业数据部门的基础工作,因此,选择一款便捷且性价比较高的软件来开发报表显得尤为重要。如果企业当前数据量不是很大且增长速度不快,Excel可以作为业务报表开发的最佳选择。事实上,目前很多企业都在用Excel开发业务报表。业务报表的类型也分很多种,包括销售日报表、销售周报表、销售月报表、产品销售报表、员工KPI考核明细表、员工佣金提成计算表、活动追踪分析表等。基于Excel快速实现业务报表开发的流程如下。
1.数据报表框架设计
报表开发之前必须先与需求方沟通好报表开发的细节。例如,报表开发的目的、报表展示的时间区间、报表更新的周期、报表需求的业务指标等。
以某企业销售日报表为例(如图2-10所示),企业销售部门架构的门店作为报表的行维度,列维度主要包括当日指标、本月累计指标以及其他综合指标。另外,报表数据更新的周期以日为单位。搭建好Excel报表框架之后,需要对报表进行美化,内容包括表格的边框、字体、底色的格式调整、对齐方式、行高列宽等。
图2-10 某企业销售日报表示例
2.数据的获取与清洗
数据是报表开发的基础,可靠的数据可以帮助得出正确的结论。反之,可能会导致意想不到的错误。因此,必须得搞清楚数据的来源以及数据的可靠程度。当原始数据比较粗糙且有错误时,需要对数据进行校验和加工,清洗干净之后才能用来作为报表开发的数据源。
报表开发的数据来源一般包括手工录入的电子表格与自动采集的数据库表。
手工录入的电子表格数据主要是调研收集或者手工表格记录的数据,这种方式收集的数据一般存储在Excel电子表格内。手工整理的数据很难避免人为因素而导致的错误,但是可以通过Excel中的“数据验证”功能实现手工录入的文本、数值、日期等约束来降低错误率。另外,需制定统一录入的框架模板,让用户根据规定的格式来录入数据,为后期提高报表开发效率做好准备。
自动采集的数据库表主要是通过程序员编写的埋点代码或者其他数据采集工具来收集的,此类数据一般会采集并存储到数据库中。Excel 2016中集成的“Power Query”功能可以实现和数据库的连接,根据编写好的SQL语法查询出结果并导入到Excel中作为报表开发的数据源。Excel建立好与数据库的连接之后,在“数据|连接|连接”命令下就会生成“工作簿连接”信息,用户仅需单击“数据|连接|全部刷新”命令就可以实现报表数据源的刷新(该功能会在本章的2.5.7小节详细阐述)。
3.报表主体内容填充
Excel报表中的主体内容主要是基于数据源汇总统计的业务指标。一般指标计算的实现方法包括纯函数公式、透视表结合函数公式这两种。常用的函数公式包括SUMIFS、COUNTIFS、AVERAGEIFS、VLOOKUP、IF、IFERROR、DATEDIF、AND、OR等。报表制作过程中可以通过添加辅助行、辅助列提高主体内容的填充效率,然后将辅助行、辅助列进行隐藏。
报表设计的指导原则是尽量修改较少的数据来实现报表主体内容的刷新。因此,编写大量函数公式用来实现报表主体内容的填充显得尤为常见。另外,一旦报表模板设计以及函数公式编写完成之后,尽量不要去修改报表模板。如需改动报表模板结构(例如,增删指标),需重新检查函数公式以及主体内容填充的准确性。
4.数据安全保护措施
数据安全对于企业非常重要。用户可以从两方面加强数据安全保护措施:一方面需对数据做备份策略,防止数据出现丢失情况;一方面需加强数据的权限控制,对不同级别的用户群体设置不同的查看权限,规范报表的使用权限。Excel中数据安全保护措施如下。
(1)加密工作簿文档
加密工作簿文档的目的是为了限制未经许可的用户访问工作簿文件。
单击“文件|信息|保护工作簿|用密码进行加密”命令,弹出“加密文档”对话框,输入密码,单击“确定”按钮,在“确认密码”对话框中重新输入密码后,再次单击“确定”按钮,完成对工作簿的加密。
(2)保护当前工作表
保护当前工作表的目的是为了限制其他用户对单元格区域进行操作(包括插入行列、删除行列、修改单元格内容等)。一般分为两种情况:一是保护当前工作表的所有单元格;一是保护当前工作表的部分单元格。
1)保护当前工作表的所有单元格。
单击“审阅|保护|保护工作表”命令,在“保护工作表”对话框中输入密码,单击“确定”按钮,在“确认密码”对话框中重新输入密码后,再次单击“确定”按钮,完成对当前工作表的所有单元格的保护。
2)保护当前工作表的部分单元格。
● 选中当前工作表的所有单元格,右击选择“设置单元格格式”选项,在“设置单元格格式”对话框中单击“保护”选项卡,去掉“锁定”复选框的勾选,单击“确定”按钮。
● 选中当前工作表中需要保护的单元格区域,右击选择“设置单元格格式”选项,在“设置单元格格式”对话框中单击“保护”选项卡,勾选“锁定”复选框,单击“确定”按钮。
● 单击“审阅|保护|保护工作表”命令,在“保护工作表”对话框中输入密码,单击“确定”按钮,在“确认密码”对话框中重新输入密码后,再次单击“确定”按钮,完成对当前工作表的部分单元格的保护。
(3)保护工作簿结构
保护工作簿结构的目的是为了限制其他用户对工作表进行操作(包括增加、删除、移动、复制工作表等)。
单击“审阅|保护|保护工作簿”命令,在“保护结构和窗口”对话框中输入密码,单击“确定”按钮,在“确认密码”对话框中重新输入密码后,再次单击“确定”按钮,完成对工作簿结构的保护。