曾興穎 程誠
摘 要:針對水電工程安全監(jiān)測數(shù)據(jù)種類繁多,數(shù)據(jù)量大,且較為零亂的情況,本文通過總結(jié)以往監(jiān)測數(shù)據(jù)分析中的數(shù)據(jù)整編和實測值計算比較復(fù)雜的問題,在基于大部分水電安全監(jiān)測的數(shù)據(jù)都存儲在Excel表格中的條件下,提出應(yīng)用編程簡單、通用性強、針對性突出的Excel VBA方法對監(jiān)測數(shù)據(jù)進行整編和計算。通過觀察其在江埡及皂市水利樞紐工程大壩安全監(jiān)測資料整編的應(yīng)用效果,這種思路較好地解決了監(jiān)測數(shù)據(jù)計算工作中遇到的枯燥、重復(fù)、繁瑣的人工處理和Excel表格中無法簡單處理的計算問題,同時提出了Excel VBA在水電監(jiān)測工程的數(shù)據(jù)處理其它方面推廣應(yīng)用的思路。
關(guān)鍵詞:Excel VBA;安全監(jiān)測;水利樞紐;數(shù)據(jù)處理
1、Excel VBA
1.1 Excel VBA
VBA(Visual Basic for Applications)是軟件Visual Basic的一部分,Visual Basic為Windows操作系統(tǒng)編寫程序提供便捷,而VBA作為內(nèi)部編程語言在Microsoft Office(MS Office,Office)應(yīng)用程序中運行。VBA作為一個事件驅(qū)動的工具,可以使用它來告訴計算機啟動一個操作或一系列操作,為此,通過在編輯模塊中鍵入命令來構(gòu)建自定義宏(即宏指令的簡稱)。
1.2 應(yīng)用優(yōu)點
VBA軟件不需要單獨購買,它是Microsoft Office 2010附帶的Visual Basic版本,Excel VBA提供了一套基于VB的高級編程工具,在應(yīng)用過程中,無需借助其他工具創(chuàng)建解決方案,且VBA與Excel程序緊密整合,無需從頭開始創(chuàng)建編程。在多種工況下進行重復(fù)計算時,只需要根據(jù)建立的計算表格,充分利用宏及VBA程序編程即可快速完成開發(fā)。Excel VBA簡易性高,易于學(xué)習(xí)和使用。Excel程序所提供的錄制宏功能為用戶學(xué)習(xí)應(yīng)用程序編碼模型提供一種簡易的途徑,同時快速獲取符合要求的VBA代碼。Excel VBA靈活性高,在使用過程中,根據(jù)用戶的習(xí)慣和對軟件的理解,為一個目標(biāo)提供多種解決方案,讓復(fù)雜的事情達到高速高效的處理模式。
2、大壩安全監(jiān)測數(shù)據(jù)現(xiàn)況
安全監(jiān)測工作是貫穿工程生命全周期的重要工作,江埡、皂市水利樞紐安全監(jiān)測共計約2400余個測點,目前,每年編制年度監(jiān)測報表時只能由人工統(tǒng)計各測點數(shù)據(jù)進行錄入,由于錄入文件報表多達2000余個,導(dǎo)致過程耗時長,效率低、且極易出錯。
Excel在各行各業(yè)都有著廣泛的應(yīng)用,它以其直觀的界面交互、便捷的數(shù)據(jù)錄入、強大的公式計算和豐富的圖表繪制功能成為最流行的數(shù)據(jù)處理軟件之一。自施工期開始,安全監(jiān)測尚未進行自動化改造時,監(jiān)測人員就以Excel表進行記錄、傳輸、測值轉(zhuǎn)換計算、數(shù)據(jù)分析、圖表制作等。但是,在以江埡、皂市為例的大型工程中使用時,由于安全監(jiān)測儀器傳感器種類繁多、所測物理量數(shù)據(jù)轉(zhuǎn)換計算公式復(fù)雜統(tǒng)計分析圖表形式多樣,導(dǎo)致監(jiān)測數(shù)據(jù)的處理、分析圖表的更新、報告的編制成為繁重而重復(fù)性的工作。往年季報、年報編制過程中對Excel的初級應(yīng)用已無法滿足工程項目深度優(yōu)化的需求。
自江埡、皂市水利樞紐完成建設(shè)安全監(jiān)測自動化系統(tǒng)后,雖然配置了商業(yè)監(jiān)測分析軟件,但因其未能完全結(jié)合實際工程特點、不易實時維護、不能根據(jù)新增需求及時修改更新,而僅被用作將數(shù)據(jù)導(dǎo)出為Excel的工具,其它大部分繪圖制表工作仍在Excel、Word里人工完成。
3、應(yīng)用及成果
為了解決繁冗重復(fù)的查詢、統(tǒng)計等計算問題,本文利用Excel VBA編程技術(shù),達到實現(xiàn)安全監(jiān)測數(shù)據(jù)報表的自動統(tǒng)計、查詢及編制的目的。
2021年4~6月,已初步實現(xiàn)安全監(jiān)測儀器數(shù)據(jù)在單一查詢條件下的數(shù)據(jù)自動處理。我們以皂市水利樞紐工程如壩頂引張線為例,進行了監(jiān)測報表數(shù)據(jù)的自動處理。經(jīng)實踐可證明Excel VBA能根據(jù)不同監(jiān)測儀器要求,編制出不同代碼得以進行。工程中大壩安全監(jiān)測儀器繁多、所測物理量數(shù)據(jù)轉(zhuǎn)換計算公式復(fù)雜統(tǒng)計分析圖表形式多樣,利用Excel VBA編程后可避免繁冗且重復(fù)的處理監(jiān)測數(shù)據(jù)、更新分析圖表、編制報告等工作。
圖1表示利用Excel VBA編程技術(shù)后,各部位壩段數(shù)據(jù)監(jiān)測情況。在設(shè)定的記錄時間點,數(shù)據(jù)自動生成后填充表格的模式替代原有的人工統(tǒng)計各測點數(shù)據(jù)模式,使得監(jiān)測人員擺脫記錄高達上千監(jiān)測點的機械繁冗工作,同時避免監(jiān)測人員在紀(jì)錄過程中產(chǎn)生的人為誤差,促使大壩安全監(jiān)測自動化系統(tǒng)進一步實現(xiàn)快捷、準(zhǔn)確的目的。
圖1中3月15日8#壩段和9#壩段數(shù)據(jù)顯示為-.05(3-14)和-1.71(3-14),這表示的是8#壩段和9#壩段在3月15日未監(jiān)測出數(shù)據(jù),而Excel VBA編程技術(shù)根據(jù)監(jiān)測儀器的相鄰位點(如數(shù)據(jù)中顯示的3月14日)選取可用數(shù)據(jù)自動生成填充,該現(xiàn)象在圖中多處可體現(xiàn),如5月5日8#壩段、6月5日13#壩段等等。在多月甚至多年數(shù)據(jù)的統(tǒng)計中,Excel VBA編程技術(shù)可根據(jù)每支儀器自動生成過程線,從而使監(jiān)測人員更直觀了解數(shù)據(jù)的波動規(guī)律,得出影響數(shù)據(jù)變化的一系列因素,如氣候、降水、水位等等。反之,通過穩(wěn)定的過程線觀察出每支儀器的穩(wěn)定性和可利用性。
4、結(jié)論
本研究在Excel基礎(chǔ)上實現(xiàn)安全監(jiān)測數(shù)據(jù)的匯總、處理、分析和生成報告的關(guān)鍵技術(shù),并共享相關(guān)自動處理程序以便隨時按需修改,將極大地減少人力,提高安全監(jiān)測數(shù)據(jù)處理與資料整編的整體效率。在研究了相關(guān)技術(shù)文獻以及考查了類似的統(tǒng)計報表的特點之后,擬利用Excel內(nèi)置的編程工具VBA(Visual Basic for Applications),實現(xiàn)安全監(jiān)測數(shù)據(jù)報表的自動統(tǒng)計、查詢及編制,是大壩安全監(jiān)測數(shù)據(jù)處理及整編分析的得力工具。
本文基于Excel已被安全監(jiān)測行業(yè)廣為應(yīng)用的基礎(chǔ)條件,研究針對以Excel自動化處理代替手工輸入的VBA程序,將有利于便捷、高效、精準(zhǔn)地完成大壩安全監(jiān)測數(shù)據(jù)處理及整編分析工作。
參考文獻
[1]Excel Home.Excel VBA 實戰(zhàn)技巧精粹[M].北京:人民郵電出版社,2013.
[2]胡芳筠,金志華,徐炯鵬.Excel VBA 在水利工程計算中的應(yīng)用[J].中國新技術(shù)新產(chǎn)品,2009( 19) :60.
[3]劉甘華.Excel 在大壩監(jiān)測數(shù)據(jù)分析中的應(yīng)用[J].安徽水利水電職業(yè)技術(shù)學(xué)院學(xué)報,2014( 2) :76-78.
[4]李如平,朱煉,張震,等.EXCEL函數(shù)在數(shù)據(jù)處理與分析中的應(yīng)用[J].電腦知識與技術(shù),2015(5X):3.