劉慧霞,向紅利
基于Excel VBA的灌漿成果表整理程序的開發
劉慧霞,向紅利
(衢州市水利水電勘測設計有限公司,浙江衢州 324002)
針對水利灌漿工程灌漿成果表整理工作量大、效率低的問題,提出運用Excel的二次開發工具VBA語言編寫程序、將可視化窗口作為操作界面的方法,實現灌漿成果表的自動整理。將原始鉆孔資料與灌漿資料錄入Excel工作表,在可視化窗口中選擇需要進行整理的表名,單擊生成表格命令按鈕即可自動完成成果表整理。工程實例結果表明:該程序可實現灌漿表的自動、準確、高效整理。為Excel VBA語言應用于灌漿工程資料整理的進一步開發奠定了基礎,同時也為其它工程資料整理提供了科學的參考。
灌漿成果表;Excel;VBA語言
灌漿施工是地下隱蔽工程,為確保工程的質量和安全,應對各灌漿技術參數實時監控、記錄和匯總,以便對灌漿質量做出正確評判。灌漿成果表作為灌漿資料匯總的一個重要組成,是灌漿工程質量評價的主要依據。目前,大型水利灌漿工程使用灌漿自動記錄儀統計資料成果表已經比較普遍。由于受工程規模等原因的限制,不是每個灌漿工程都使用灌漿自動記錄儀。記錄員手工記錄原始數據、錄入Excel表格,根據工程規范要求進行灌漿資料整理的情況也存在,這是一個繁瑣又不斷重復的工作。本文通過Excel的二次開發工具VBA編程,根據規范要求的表格格式,編寫灌漿成果表整理程序,運用可視化窗口,實現灌漿成果表的自動整理。
Microsoft Excel是微軟公司眾多辦公軟件的組件之一,是為Windows和Apple Macintosh操作系統的電腦而編寫和運行的一款試算表軟件。Excel主要用來制作電子表格,進行復雜的數據運算。
VBA是Visual Basic For Application的縮寫,是應用程序開發語言Visual Basic(簡稱VB)的子集,是微軟Office中廣泛使用的宏語言,是Excel、Word、Access等組件的二次開發工具[1]。
根據水工建筑物水泥灌漿施工技術規范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
在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.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

圖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
本文通過分析國內灌漿成果表整理現狀,提出運用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。