安貝貝,李 靈,蔣昌潭
(重慶市環境監測中心,重慶401147)
環境監測數據統計需要對大量的環境監測數據進行處理,工作人員常常需要花費大量的時間完成數據計算、整理和校對,工作繁瑣、重復性強。為了提高環境監測數據統計效率,本文以功能區噪聲數據篩選為例,將excel中的Visual Basic for Application(簡稱VBA)應用在環境監測數據統計分析中。
Visual Basic for Applications(簡稱VBA)是新一代標準宏語言,是一種面向對象的程序設計方法[1]。使用VBA可以使工作自動化;可以自定義EXCEL工具欄、菜單和界面;可以創建報表;可以對數據進行復雜的操作和分析等。
VBA集成開發環境是進行VBA程序設計和代碼編寫的地方,在Excel中通過“工具—宏—Visual Basic編輯器”進入VBA開發環境。
在環境監測數據統計中,功能區噪聲的計算方法相對復雜。各個功能區噪聲監測數據需要先根據“聲環境質量常規監測暫行技術規定”要求,利用公式 (1)分別計算出晝間 (Ld)和夜間 (Ln)等效聲級,再按照《聲環境質量標準》 (GB3096-2008)[2]對晝間、夜間等效聲級進行獨立評價。

式中:Leq(i)為白天 (06∶00—22∶00)16個小時中第i個小時的等效聲級,Leq(j)為夜間(22∶00—06∶00)8 個小時中第 j個小時的等效聲級。
對某個功能區噪聲監測點建立表1所示的excel表,啟動“宏”編輯器,首先定義全局變量,例如:Dim row As Integer。
(定義列變量),Dim Sumval_D As Double(定義晝間等效聲級為浮點型變量),再對變量進行初始化:Sumval_D=0#,Sumval_N=0#等。
(定義整型循環變量),Dim Thecell As Range
根據公式 (1),利用冪函數 Application.WorksheetFunction.Power()和對數函數Application.WorksheetFunction.Log10()進行代碼編寫,結果如表2所示。
核心代碼示范如下:
Sumval_D=0#
Sumval_N=0#
For row=1 To 6
通過對沖動性購買行為的相關文獻進行歸納分析,發現現有文獻的研究熱點是消費者沖動性購買行為的影響因素,這方面的研究可以擴展出更多的具體研究情境下消費者的沖動性購買行為受什么因素的影響,同時,可以結合營銷心理學方面的知識,研究消費者沖動性購買行為發生時其心理狀態的變化。
Set Thecell=Range("B2").Offset(row-1,0)
Sumval_N=Sumval_N+Application.WorksheetFunction.Power(10,Thecell.Value*0.1)
Next row
For row=1 To 16
Set Thecell=Range("B8").Offset(row-1,0)
Sumval_D=Sumval_D+Application.WorksheetFunction.Power(10,Thecell.Value*0.1)
Next row
For row=1 To 2
Sumval_N=Sumval_N+Application.WorksheetFunction.Power(10,Thecell.Value*0.1)
Next row
Sumval_D =10* Application.Worksheet Function.Log10(Sumval_D/16)
Sumval_N =10* Application.Worksheet Function.Log10(Sumval_N/8)
在計算晝間和夜間等效聲級的基礎上,分別篩選出該測點晝間和夜間等效等級最小出現的日期,結果如圖1所示。
首先利用excel“工具—宏”(或快捷鍵Alt+F8)新建“宏”,再新增一 Button按鈕 (Private Sub CommandButton1_Click()End Sub),以方便今后直接執行該宏。

表1 功能區噪聲原始數據表

表2 等效聲級計算結果
核心代碼示范如下:
For row=1 To 9
Set Thecell=Range("B29").Offset(0,row)
If minval>= Thecell.Value Then minval=Thecell.Value
If minval>= Thecell.Value Then mincol=Thecell.Column
Next row
MsgBox"晝間等效聲級最小的日期"&Cells(1,mincol_D)&";"&"夜間等效聲級最小的日期:"&Cells(1,mincol_N)

針對環境監測數據統計中較為復雜的功能區噪聲等效聲級監測日期的篩選問題,利用Excel中的VBA編制宏代碼能夠方便快捷地實現。此外,Excel VBA使用簡便,功能強大,能夠解決環境監測工作中存在的數據量大,計算復雜繁瑣等困難。
[1]趙志東.Excel VBA基礎入門 (第2版)[M].北京:人民郵電出版社,2011.
[2]GB3096-2008.聲環境質量標準 [S].
[3]徐浙峰,林樹生,封龍.用EXCEL統計功能區噪聲 [J].黑龍江環境通報,2006,30(3):94-96.