薛萬標(biāo)
摘 要:文章主要介紹在沒有專業(yè)的測量軟件的情況下,通過使用在電腦上廣泛使用的Excel軟件編制自定義函數(shù),通過Excel進行計算。Excel中大量的公式函數(shù)可以應(yīng)用選擇,使用Microsoft Excel可以執(zhí)行計算,分析信息并管理電子表格或網(wǎng)頁中的數(shù)據(jù)信息列表與數(shù)據(jù)資料圖表制作,可以實現(xiàn)許多方便的功能,帶給使用者方便,但是Excel中本身是含有大量的函數(shù)可以調(diào)用,但是其本身并不含有有關(guān)混凝土砼判定的函數(shù),因此可以通過在Excel中編制自定義函數(shù)來進行相應(yīng)的測算。
關(guān)鍵詞:Excel;自定義函數(shù);工程試驗
前言
Excel中大量的公式函數(shù)可以應(yīng)用選擇,但是Excel中并不含有有關(guān)混凝土砼判定的函數(shù),因此我們可以通過在Excel中編制自定義函數(shù)來進行相應(yīng)的測算。
1 Excel的介紹
Microsoft Excel是微軟公司的辦公軟件Microsoft office的組件之一,是由Microsoft為Windows和Apple Macintosh操作系統(tǒng)的電腦而編寫和運行的一款試算表軟件。一般說來,Excel主要用來進行有繁重計算任務(wù)的預(yù)算、財務(wù)、數(shù)據(jù)匯總等工作,Excel中大量的公式函數(shù)可以應(yīng)用選擇,使用Microsoft Excel可以執(zhí)行計算,分析信息并管理電子表格或網(wǎng)頁中的數(shù)據(jù)信息列表與數(shù)據(jù)資料圖表制作,可以實現(xiàn)許多方便的功能,帶給使用者方便。Excel中包含了很多的函數(shù),但是其內(nèi)置的函數(shù)并不一定總是滿足我們的需求,這時就可以通過定義自己的函數(shù)來解決問題。
2 自定義函數(shù)介紹
自定義函數(shù)是我們在Excel中設(shè)定的符合自己需要的函數(shù),在有些工作中,我們可以選用Excel內(nèi)置的函數(shù)來完成任務(wù),但是這樣做有的時候會發(fā)現(xiàn)公式可能會會很冗長、繁瑣同時可讀性很差,因此我們就需要使用自定義函數(shù)來進行簡化。有時候在工作中,需要使用的函數(shù)在Excel的內(nèi)置函數(shù)庫中無法找到,這時候就需要我們使用自定義函數(shù)來滿足實際工作中的個性化需求。在Excel中自定義函數(shù)是使用VBA來進行創(chuàng)建的, VBA是新一代標(biāo)準(zhǔn)宏語言,是基于Visual Basic for Windows 發(fā)展而來的。它與傳統(tǒng)的宏語言不同,傳統(tǒng)的宏語言不具有高級語言的特征,沒有面向?qū)ο蟮某绦蛟O(shè)計概念和方法。而VBA 提供了面向?qū)ο蟮某绦蛟O(shè)計方法,提供了相當(dāng)完整的程序設(shè)計語言。VBA 易于學(xué)習(xí)掌握,可以使用宏記錄器記錄用戶的各種操作并將其轉(zhuǎn)換為VBA 程序代碼。這樣用戶可以容易地將日常工作轉(zhuǎn)換為VBA 程序代碼,使工作自動化。因此,對于在工作中需要經(jīng)常使用Office 套裝軟件的用戶,學(xué)用VBA 有助于使工作自動化,提高工作效率。另外,由于VBA 可以直接應(yīng)用Office 套裝軟件的各項強大功能,所以對于程序設(shè)計人員的程序設(shè)計和開發(fā)更加方便快捷。VBA主要能用來擴展Windows的應(yīng)用程式功能,特別是Microsoft Office軟件。也可說是一種應(yīng)用程式視覺化的Basic 腳本。VBA是微軟最好的通用應(yīng)用程序腳本編程語言,功能強大。使用VBA可以規(guī)范用戶的操作,控制用于的操作行為,同時使操作界面人性化,方便用戶的操作,多個步驟的手工操作通過執(zhí)行VBA代碼可以迅速的實現(xiàn)。
3 在Excel中設(shè)定自定義函數(shù)的方法
Excel內(nèi)置的函數(shù)雖然很多,但是并不能滿足我們的所有需要,我們可以自定義一個函數(shù),來完成一些特定的運算,下面我們列舉自定義函數(shù)的步驟進行介紹。
3.1 執(zhí)行“工具→宏→Visual Basic編輯器”菜單命令(或按“Alt+F11”快捷鍵),打開Visual Basic編輯窗口。
3.2 在窗口中,執(zhí)行“插入→模塊”菜單命令,插入一個新的模塊——模塊1。
3.3 在右邊的“代碼窗口”中輸入相應(yīng)的代碼:
3.4 關(guān)閉窗口,自定義函數(shù)完成。
使用上述步驟完成的自定義函數(shù)只能在設(shè)定的工作簿名中完成設(shè)定的功能函數(shù)。
4 工程應(yīng)用實例
根據(jù)上面介紹的操作步驟,進行操作,首先需要執(zhí)行步驟:
(1)“工具→宏→Visual Basic編輯器”菜單命令(或按“Alt+F11”快捷鍵),打開Visual Basic編輯窗口。(2)在窗口中,執(zhí)行“插入→模塊”菜單命令,插入一個新的模塊——模塊1。(3)在右邊的“代碼窗口”中輸入相應(yīng)的代碼:該功能函數(shù)命名為tpd函數(shù),此功能函數(shù)設(shè)定了三個參數(shù),可以檢測三個檢測值,tpd函數(shù)是根據(jù)《公路工程水泥及水泥混凝土試驗規(guī)程》(JTG E30-2005)(T0553-2005)立方體抗壓強度試驗方法中所規(guī)定的方法進行編制的,從而對檢測出來的數(shù)據(jù)進行及時的歸納,減少因計算而出現(xiàn)的誤差,提高了數(shù)據(jù)處理的工作效率,計算人員可以很方便的根據(jù)處理出來的數(shù)據(jù)而做出判斷。自定義函數(shù)將人們從繁瑣的數(shù)據(jù)后期處理中解放了出來,有很高的實用價值。而且這個函數(shù)采用了模塊化的設(shè)計,可以根據(jù)需要進行相應(yīng)的修改,就能很輕松的變?yōu)轭愃乒δ艿暮瘮?shù),下面我們對函數(shù)中的設(shè)定要求進行說明:現(xiàn)將水泥混凝土立方體抗壓強度試驗方法的結(jié)果判定要求介紹如下:以3個試件測值的算術(shù)平均值為測定值,計算精確至0.1MPa。三個測值中的最大值或最小值中如有一個與中間值之差超過中間值的15%,則取中間值為測定值;如最大值和最小值與中間值之差均超過中間值的15%,則該組試驗結(jié)果無效。
代碼如下:
Function tpd(ByVal a1 As Double,ByVal a2 As Double,ByVal a3 As Double)
Dim MyArray(),i%,Average1,max1,min1,mid1,result
ReDim MyArray(0 To 2)endprint
Dim Index :Dim TEMP:Dim NextElement
'冒泡排序
MyArray(0) = a1
MyArray(1) = a2
MyArray(2) = a3
NextElement = 0'先將已處理的元素個數(shù)置為0
Do While (NextElement < UBound(MyArray)) '遍歷每一個元素
Index = UBound(MyArray) '讀取當(dāng)前最大下標(biāo)
Do While (Index > NextElement) '與前面的每一個元素比較
If MyArray(Index) < MyArray(Index - 1) Then'升序:如果當(dāng)前值小于上一個值,則互換
TEMP = MyArray(Index)
MyArray(Index) = MyArray(Index - 1)
MyArray(Index - 1) = TEMP
End If
Index = Index - 1'將當(dāng)前下標(biāo)移到上一個值
Loop
NextElement = NextElement + 1'將已處理的元素個數(shù)加1
Loop
Average1=Application.WorksheetFunction.Average(MyArray)
min1 = Application.Index(MyArray,1)
mid1 = Application.Index(MyArray,2)
max1 = Application.Index(MyArray,3)
If Abs(mid1 - min1) > mid1 * 0.15 And Abs(max1 - mid1) >mid1*0.15 Then
tpd = “該組試驗結(jié)果無效!”
ElseIf Abs(mid1 - min1) < mid1 * 0.15 And Abs(max1 - mid1) < mid1 * 0.15 Then
tpd = Average1
Else
tpd = mid1
End If
End Function
輸入完成后,回到Excel工作表界面,只需輸入“=tpd(*,*,*)”就可計算出相應(yīng)的數(shù)據(jù)。*- -代表要計算的三個強度值,可以是數(shù)值,表達式,或單元格引用。
5 結(jié)束語
文章介紹了怎樣在Excel中設(shè)定自定義函數(shù)來簡化在工程試驗中對于數(shù)據(jù)的處理,希望讀者可以從中有所借鑒。
參考文獻
[1]何凌霄.Excel中文本數(shù)據(jù)的排序方法[J].農(nóng)村電工,2009,12.
[2]在Excel中自定義函數(shù)[J].中國會計電算化,2003,5.endprint