基于Excel VBA的灌浆成果表整理程序的开发

2011-09-05 10:42刘慧霞向红利
长江科学院院报 2011年5期
关键词:统计表控件表格

刘慧霞,向红利

基于Excel VBA的灌浆成果表整理程序的开发

刘慧霞,向红利

(衢州市水利水电勘测设计有限公司,浙江衢州 324002)

针对水利灌浆工程灌浆成果表整理工作量大、效率低的问题,提出运用Excel的二次开发工具VBA语言编写程序、将可视化窗口作为操作界面的方法,实现灌浆成果表的自动整理。将原始钻孔资料与灌浆资料录入Excel工作表,在可视化窗口中选择需要进行整理的表名,单击生成表格命令按钮即可自动完成成果表整理。工程实例结果表明:该程序可实现灌浆表的自动、准确、高效整理。为Excel VBA语言应用于灌浆工程资料整理的进一步开发奠定了基础,同时也为其它工程资料整理提供了科学的参考。

灌浆成果表;Excel;VBA语言

1 概 述

灌浆施工是地下隐蔽工程,为确保工程的质量和安全,应对各灌浆技术参数实时监控、记录和汇总,以便对灌浆质量做出正确评判。灌浆成果表作为灌浆资料汇总的一个重要组成,是灌浆工程质量评价的主要依据。目前,大型水利灌浆工程使用灌浆自动记录仪统计资料成果表已经比较普遍。由于受工程规模等原因的限制,不是每个灌浆工程都使用灌浆自动记录仪。记录员手工记录原始数据、录入Excel表格,根据工程规范要求进行灌浆资料整理的情况也存在,这是一个繁琐又不断重复的工作。本文通过Excel的二次开发工具VBA编程,根据规范要求的表格格式,编写灌浆成果表整理程序,运用可视化窗口,实现灌浆成果表的自动整理。

2 Excel和VBA简介

Microsoft Excel是微软公司众多办公软件的组件之一,是为Windows和Apple Macintosh操作系统的电脑而编写和运行的一款试算表软件。Excel主要用来制作电子表格,进行复杂的数据运算。

VBA是Visual Basic For Application的缩写,是应用程序开发语言Visual Basic(简称VB)的子集,是微软Office中广泛使用的宏语言,是Excel、Word、Access等组件的二次开发工具[1]。

3 灌浆成果表

根据水工建筑物水泥灌浆施工技术规范DLT5148-2001的要求,灌浆成果表类型及所需的灌浆原始记录资料如表1所示[2]。钻孔原始记录、灌浆原始记录、压水试验记录是灌浆资料整理最基本的原始数据。将原始资料录入Excel工作表,先统计“灌浆孔成果一览表”,再根据“灌浆孔成果一览表”统计“灌浆分序统计表”、“灌浆综合统计表”、“灌浆工程完成情况表”,“灌浆成果表”整理顺序如图1所示。

表1 施工记录资料及灌浆成果表Table 1 Data recorded during construction and the grouting result table

图1 灌浆资料整理顺序Fig.1 The sequence of organizing grouting data

4 可视化窗口

在Excel工作表界面设置一个灌浆资料整理可视化窗口。其添加步骤为:在Visual Basic编辑器中插入“用户窗体”,在用户窗体中添加1个“框架”、1个“复合框”、2个“命令按钮”、4个“选项按钮”,修改用户窗体及各控件的Caption,如图2所示。

图2 灌浆成果表整理窗口Fig.2 The w indow of grouting result organizing

在“表格类型选择”框架中选择需统计的表名,单击“生成表格”命令按钮即可完成资料整理。当选择“灌浆分序统计表”时,需选择灌浆单元才可进行统计分析,否则跳出提示对话框,当关闭灌浆资料整理窗口时,跳出“关闭窗口警告”对话框,如图3所示。

图3 警告对话框Fig.3 The warning dialog box

5 VBA代码编写

灌浆成果表整理窗口中的各控件属性值修改完成后,即可对各控件进行代码编写。

5.1 初始化控件

当运行“灌浆成果表整理窗口”时,将“灌浆孔成果一览表”选项按钮设为默认选项,程序代码如下所示:

Private Sub UserForm_Initialize()

O1.Value=True

End Sub

5.2 “生成表格”控件代码编写

在“表格类型选择”框架中选择需统计的选项,运用if……end if语句编写,程序流程如图4所示。

图4 成果表整理程序流程Fig.4 Flow chart of grouting result organizing

5.3 “关闭窗口”控件代码编写

当关闭灌浆资料整理窗口时,将跳出“关闭窗口警告”对话框,程序代码如下所示。

Private Sub C2_Click()

Dim a As Integer

a=MsgBox("是否关闭窗口?",vbOKCancel,"关闭窗口警告")

If a=vbOK Then

Unload Me

End If

End Sub

6 应用实例

图5 灌浆孔成果一览表Fig.5 The result of grouting holes

图6 第一单元灌浆分序统计表Fig.6 Sub-sequence table of the first unit grouting

已知某一土石围堰上游排灌浆资料,运用“灌浆成果表整理程序”完成对该工程灌浆成果表的整理。

在工作表中录入围堰钻孔、灌浆原始资料,激活“灌浆成果表整理窗口”,运用该程序完成灌浆孔成果一览表、第一单元灌浆分序统计表、灌浆综合统计表,计算结果分别如图5至图7所示。

图7 灌浆综合统计表Fig.7 The com prehensive statistical table of grouting

7 结 论

本文通过分析国内灌浆成果表整理现状,提出运用Excel的二次开发工具VBA语言,实现灌浆成果表的自动整理。通过实例运行结果看,基于Excel VBA语言实现灌浆成果表的自动整理是可行的。基于VBA语言语法简单,针对宏录制学习的特点,开发者可根据每个灌浆工程的不同要求编写不同的程序,实现灌浆资料整理自动、准确、高效地进行。本文为运用Excel VBA语言进行水利灌浆工程资料整理的进一步开发奠定了基础,同时也为其它灌浆工程资料整理提供了科学的参考。

[1] 伍云辉.Excel VBA应用高效开发[M].北京:电子工业出版社,2007:2-38.(WU Yun-hui.Efficient Devel-opment of Excel VBA Application[M].Beijing:Elec-tronic Industry Press,2007:2-38.(in Chinese))

[2] DLT5148-2001,水工建筑物水泥灌浆施工技术规范[S].(DLT5148-2001,The Standard Specification for Construction of Hydraulic Structure CementGrouting[S].(in Chinese))

[3] 孙 钊.大坝基岩灌浆[M].北京:中国水利水电出版社,2004:201-220.(SUN Zhao.Grouting of Dam Bed-rock[M].Beijing:China Water Power Press,2004:201-220.(in Chinese))

[4] 夏 强.Excel VBA应用开发与实例精讲[M].北京:科学出版社,2006:1-18.(XIA Qiang.Application De-velopment and Example Intensive Teaching of Excel VBA[M].Beijing:Electronic Industry Press,2006:1-18.(in Chinese))

[5] 熊厚金.国际岩土锚固与灌浆新进展[M].北京:中国建筑工业出版社,1996:33-39.(XIONG Hou-jin.New Progress in International Ground Anchorage and Grouting[M].Beijing:China Building&Industry Press,1996:33-39.(in Chinese))

[6] 罗仁辉.钻孔信息标注的VBA程序化处理[J].人民长江,2009,40(24):60-65.(LUO Ren-hui.VBA Pro-grammed Treatment of Drilling Information Marking[J].Yangtze River,2009,40(24):60-65.(in Chinese) )

(编辑:赵卫兵)

Programm ing of Organizing Grouting Result Tables Using VBA Language Based on Excel Software

LIU Hui-xia,XIANG Hong-li(Quzhou Water Resource and Hydropower Design and Research Co.Ltd.,Quzhou 324002,China)

Heavy workload and low efficiency are problems in organizing the grouting result tables ofwater conser-vancy grouting projects.In this paper,taking visualization window as the operation interface,a program for auto-matically organizing the grouting result tables using VBA language,the secondary development tool of Excel,is presented.Having inputted original borehole data and the grouting data in the Excel worksheets,users then select tables to be organized in the visualization window,and then click on“generate table”button to achieve automatic organization.The program has been applied to an engineering project and proved to be capable of automatic,accu-rate,and efficient organization.This paper lays foundation for applying Excel VBA language to organizing data of grouting projects,and serve as a reference for organizing data of other engineering projects.

grouting result table;excel;VBA language

TV543

A

1001-5485(2011)05-0071-04

2010-07-08

刘慧霞(1983-),女,浙江江山人,硕士,主要从事水利水电工程方面的研究,(电话)13615700274(电子信箱)lhxzgz@163.com。

猜你喜欢
统计表控件表格
《现代临床医学》来稿表格要求
《现代临床医学》来稿表格要求
2020年部分在晋提前批招生院校录取统计表
2019年提前批部分院校在晋招生录取统计表
统计表格的要求
上榜派出所统计表
关于.net控件数组的探讨
神奇的统计表
ASP.NET服务器端验证控件的使用
本刊表格的要求