基于VBA技术的动态交互式Excel报表在海洋石油生产数据审核与分析中的应用
2019-09-10王渝鑫杜虹
王渝鑫 杜虹
摘 要:随着海洋石油的发展,海洋石油生产一线平台所需要进行录入、分析的报表数据日益增多。利用内嵌于Microsoft Office中的VBA程序语言,可以大量简化数据录入人员重复性工作,提高数据录入准确性;Excel中的动态交互式图表有助于提升数据分析人员判断效率与准确性。本文主要介绍在Excel环境下VBA设计实例以解决在生产数据录入过程中遇到的实际问题,同时利用动态交互式报表进行生产动态分析。
关键词:VBA技术 Excel环境 动态交互式报表 动态分析
引言
在海洋石油生产平台,中控人员需承担各类数据的录入,与此同时,还需承担生产流程的日常监控与调整。繁重的工作量与每日超过5000个以上数据的录入,不仅增加了劳动强度,而且容易发生数据录入失准。
在提倡智能化革命的今天,数据录入智能化已是大势所趋。基于VBA技术的动态交互式Excel报表大幅降低了数据录入人员的工作量,并提供了实时的生产动态分析功能。
一、VBA与动态交互式图表概述
Visual Basic for Applications(VBA)是Visual Basic的一种宏程序设计语言,也是微软公司开发出来的自动化、批处理任务程序,其可以有效地扩展Windows应用程序功能。随着VBA宏编程的普及,用户录入Excel宏命令时更加简单,可以采用交互模式录制模式,提高了宏程序的可用性。[1,2]
交互式报表是相对于传统静态数据报表的一种智能化业务分析的报表解决方案,使静态的报表尽可能动态化,即报表数据动态化和报表形式动态化。交互式报表可以为报表审阅者提供交互功能,审阅者可以在运行报表之前输入或选择值,从而决定报表数据的形式。[3]
二、应用实例
以渤海某油田中控数据录入人员的生产日报为例,每日人工录取数据超过2500个,不仅数据录入量巨大,而且审核难度较高、周期性的数据搜集分析工作难度极大。
为减轻数据报表录入的繁琐性、提高数据录入准确率,油田编制了基于VBA的Excel的智能审核报表,实现了宏程序自动采集各岗的基础数据,并实现了以月单位的数据汇总,同时通过交互式图表,实现了主要生产数据的可视化查询,便于实时动态分析油田生产动态。
2.1基础数据自动采集
对需要进行数据采集的单岗数据Excel报表与需汇总形成的生产日报,进行统一命名,如:井口参数.xlsx与生产数据智能审核报表.xlsm。
操作方法:
第一步:先录制自动数据采集的宏
(1)打开生产数据智能审核报表,即搜集基础生产数据的报表;(2)选择菜单“工具→宏→录制新宏”,点击“确定”;(3)手动将需井口参数报表中需要进行粘贴的数据,逐一粘贴至生产数据智能审核报表中;(4)选择菜单“工具→宏→停止录制”。
第二步:用VBA编程实现触发按钮
(1)选择菜单插入控件;(2)指定录入完成的宏程序。
第三步:点击制作完成的控件,完成数据采集。
2.2基础数据月度累加汇总
第一步:用VBA编程,制作触发按钮;第二步:利用“do while ...else” 、“if...then...”、“loop”语句完成,数据的判断、粘贴与循环复制的功能。
(1)选中控件,右键指定宏,选择编辑;(2)编写VB程序语句;
Sub 录取当日水质()
i = 3
Do While Range("B36") <> ""
If Cells(i, 20) <> "" Then
i = i + 1
Else:
Range("B76:F76").Select
Selection.Copy
Cells(i, 19).PasteSpecial xlPasteAll
Range("I76:M76").Select
Selection.Copy
Cells(i, 24).PasteSpecial xlPasteAll
Range("B75:F75").Select
Selection.Copy
Cells(i, 31).PasteSpecial xlPasteAll
Range("I75:M75").Select
Selection.Copy
Cells(i, 36).PasteSpecial xlPasteAll
Exit Do
End If
Loop
End Sub
(2)將上述宏制定至制作好的控件;
(3)点击控件触发程序,录取每月中当日的数据至汇总表格。
2.3制作交互式图表
使用Excel函数 index,制作交互式动态图表。
以生产数据智能审核报表中,月度注水分析为例。
第一步 插入INDEX函数,对当月每日的数据在T36这个单元格进行绝对引用
第二步 插入控件窗体,并对数据源区域与单元格连接设置,将数据绑定至下拉控件中。
第三步 插入折线表,并将数据源设置为引用数据,完成交互式图表设置。
三、应用效果及意义
基于VBA技术的动态交互式EXCEL报表已在渤海某油田中控报表数据录入与审核进行了广泛应用。在实际应用过程中,通过不同班组与中控录入人员的反复使用,该表不断优化,实现了生产核心数据变化趋势的自动预警提示和生产数据越的趋势可视化分析。提高了工作效率与数据录入的准确性。
参考文献:
[1]王春红.基于VBA的财务报表系统分析[J].江苏商论,2014,(33):221-222.
[2]唐燕,韩爱庆,翟兴.基于VBA技术实现调查问卷数据自动读取[J].计算机与现代化,2004,(2):226-228.
[3]潘晓苹,庄礼杰.Microsoft Office 情景教学案例[M].北京:世界图书出版公司,2004.