莫平衡
(湖南省有色地質(zhì)勘查局二一七隊(duì),湖南 衡陽(yáng) 421001)
Microsoft Office軟件的Excel是常用處理數(shù)據(jù)和統(tǒng)計(jì)分析的軟件,在多行業(yè)中廣泛使用。在地質(zhì)工作中常用該軟件的數(shù)據(jù)儲(chǔ)存與管理、圖表制作、數(shù)據(jù)分析、函數(shù)公式和VBA拓展功能。
本文就利用Excel的VBA功能進(jìn)行二次開(kāi)發(fā),智能化計(jì)算加權(quán)平均品位技術(shù)方法進(jìn)行研究探討,以水口山資源儲(chǔ)量核實(shí)項(xiàng)目中的康家灣礦計(jì)算應(yīng)用為例,闡述了快速實(shí)現(xiàn)計(jì)算加權(quán)平均品位和礦體品位(厚度)變化系數(shù)計(jì)算的過(guò)程。
水口山鉛鋅礦是目前湖南省規(guī)模較大的有色金屬礦山,礦山實(shí)際年產(chǎn)規(guī)模50萬(wàn)噸,礦區(qū)位于湖南省常寧市松柏鎮(zhèn)。康家灣鉛鋅金銀礦是上世紀(jì)七十年代,運(yùn)用多種找礦手段探尋到的隱伏鉛鋅金銀盲礦床;區(qū)內(nèi)經(jīng)歷多期勘查工作,提交多個(gè)勘查報(bào)告。水口山資源儲(chǔ)量核實(shí)項(xiàng)目共收集了康家灣礦11678件樣品資料,需計(jì)算2072個(gè)加權(quán)平均品位,面對(duì)如此巨大的計(jì)算工作量,如何實(shí)現(xiàn)高效智能化準(zhǔn)確計(jì)算工作成為當(dāng)務(wù)之急。
區(qū)內(nèi)賦礦層位為硅化破碎角礫巖層(QB),壺天群(C2+3)、棲霞組(P1q)的碳酸鹽巖層,當(dāng)沖組及斗嶺組碎屑巖,礦群均產(chǎn)于倒轉(zhuǎn)背斜軸部及兩翼的硅化破碎帶中。礦體形態(tài)多呈似層狀或透鏡狀。為中大型中低溫多期復(fù)合疊加充填型鉛鋅金銀礦床。基本分析元素為Pb、Zn、Au、Ag、S。區(qū)內(nèi)探礦工程按勘探線布置,工程分布比較均勻,為便于生產(chǎn)利用,資源量估算方法選用垂直斷面法。
區(qū)內(nèi)有兩種類型的礦體,①以鉛鋅為主、伴生硫金銀;②以硫鐵礦為主,伴生鉛鋅金銀。因此在單工程中,凡樣品鉛鋅礦石中鉛、鋅、金、銀,硫鐵礦中的硫品位大于或等于邊界品位者,均視為礦體進(jìn)行圈定。夾石樣品厚度小于夾石剔除厚度時(shí)并入礦體中,并入后單工程平均品位不低于最低工業(yè)品位,否則當(dāng)夾石剔除。
加權(quán)平均品位采用長(zhǎng)度或面積加權(quán)計(jì)算,公式如下:
VBA是Visual Basic宏的語(yǔ)言,是微軟開(kāi)發(fā)應(yīng)用于桌面程序中執(zhí)行通用的自動(dòng)化(OLE)任務(wù)的編程語(yǔ)言。主要用于擴(kuò)展Windows的應(yīng)用程式功能,特別是Microsoft Office軟件;是應(yīng)用程式視覺(jué)化的Basic腳本。1994年Excel5.0版本就具有VBA宏功能。
本人經(jīng)過(guò)長(zhǎng)期摸索結(jié)合實(shí)際工作,利用VBA宏的功能,編寫了加權(quán)平均品位智能計(jì)算的代碼,并應(yīng)用水口山資源儲(chǔ)量核實(shí)工作中。
單工程平均品位計(jì)算表格編制樣式見(jiàn)圖1,該表編制過(guò)程需注意6點(diǎn):①用人工在A列“礦體編號(hào)”單元格中充填礦體編號(hào)代表圈定的礦體。②在同一單工程中出現(xiàn)兩段以上礦體或兩個(gè)不同單工程之間、見(jiàn)礦樣品行不足6行,需用空白行隔開(kāi)。③表頭列數(shù)設(shè)置需嚴(yán)格按圖1樣式編制。④增加或減少元素,需修改VBA代碼;⑤樣品數(shù)據(jù)有變化,需重新運(yùn)行VBA代碼。⑥分析結(jié)果的原始數(shù)據(jù)有“微”或者空白值時(shí)當(dāng)零值處理。
圖1 單項(xiàng)工程平均品位計(jì)算表樣式
在Excel中按Alt+F11鍵進(jìn)入VBA窗口,將以下代碼輸入模塊:
Sub 單工程平均品位加權(quán)計(jì)算()
Dim vData As Variant, nRow As Double, nI As Double
Dim vResult As Variant, nStart As Double, nEnd As Double, nFillRow As Double
Dim vProject As Variant
ChDrive Left(ThisWorkbook.Path, 1)
ChDir ThisWorkbook.Path
Application.ScreenUpdating = False
With ActiveSheet
With .UsedRange
nRow = .Rows.Count + .Row - 1
nI = .Columns.Count + .Column - 1
End With
vData = Range("A1:N" & nRow).Value
For nRow = 6 To UBound(vData) + 1
If (vData(nRow + 1 * (nRow = UBound(vData) + 1), 1) = "" Or nRow = UBound(vData) + 1) Then
If IsArray(vResult) Then
With .Range("N" & (nRow - 1) & ":P" & (nRow - 1)).Borders(xlEdgeBottom)
End With
If vResult(1, 2) = 0 Then
For nI = 1 To 6
研究學(xué)者認(rèn)為,目前社會(huì)所關(guān)注的農(nóng)產(chǎn)品質(zhì)量問(wèn)題就是經(jīng)濟(jì)問(wèn)題,預(yù)警就是指分析、評(píng)價(jià)和預(yù)報(bào)以及決策的過(guò)程。在進(jìn)行農(nóng)產(chǎn)品質(zhì)量安全預(yù)警研究時(shí),就是完成農(nóng)產(chǎn)品質(zhì)量安全防范和控制,其中在保證農(nóng)產(chǎn)品質(zhì)量安全的基礎(chǔ)之上,依托管理學(xué)、經(jīng)濟(jì)學(xué)等預(yù)警研究法,科學(xué)評(píng)判農(nóng)產(chǎn)品質(zhì)量安全情況,并對(duì)農(nóng)產(chǎn)品安全趨勢(shì)進(jìn)行有效預(yù)測(cè),進(jìn)而做出相對(duì)較準(zhǔn)確的預(yù)報(bào),利用行之有效的應(yīng)對(duì)措施進(jìn)行驗(yàn)證[1]。
vResult(nI, 2) = Empty
Next
Else
For nI = 2 To 6
vResult(nI, 2) = vResult(nI, 2) / vResult(1, 2)
Next
End If
nI = nRow - 1 + nStart - 5
.Range("O" & nI & ":P" & nI).Resize(6).Formula = vResult
vResult = Empty
nStart = 0
End If
Else
If nStart = 0 Then
nStart = nRow
End If
If Not IsArray(vResult) Then
vResult = [{"L=","";"Pb=","";"Zn=","";"Au=","";"Ag=","";"S=",""}]
For nI = 1 To 6
vResult(nI, 2) = Empty
Next
End If
For nI = 1 To 6
If nI = 1 Then
vResult(nI, 2) = vResult(nI, 2) + Val(vData(nRow, 7))
Else
vResult(nI, 2) = vResult(nI, 2) + Val(vData(nRow, 7 + nI)) * Val(vData(nRow, 7)) 'I~M列
End If
Next
End If
Next
End With
ExitSub:
Application.AskToUpdateLinks = True
End Sub
點(diǎn)擊“F5鍵”運(yùn)行代碼,結(jié)束后即可得到計(jì)算結(jié)果,代碼各語(yǔ)句具體的含義,請(qǐng)參閱VBA相關(guān)資料,限于篇幅不作詳細(xì)介紹。
根據(jù)《銅、鉛、鋅、銀、鎳、鉬礦地質(zhì)勘查規(guī)范》(DZ/T 0214-2002)規(guī)定要求,品位(厚度)變化系數(shù)估算公式為,式中:V礦體厚度或品位變化系數(shù);σ單工程厚度或單樣品位統(tǒng)計(jì)的均方差;單工程厚度或單樣品位統(tǒng)計(jì)的算術(shù)平均值。
Excel計(jì)算品位(厚度)變化系數(shù)主要利用數(shù)據(jù)透視表功能快速計(jì)算出各礦體品位(厚度)的算術(shù)平均值和標(biāo)準(zhǔn)偏差(均方差)值。實(shí)現(xiàn)思路:①品位變化系數(shù)計(jì)算基礎(chǔ)數(shù)據(jù)來(lái)源于單工程平均品位計(jì)算表(見(jiàn)圖1)。只保留礦體編號(hào)和分析結(jié)果,其它列全部刪除,不同礦區(qū)可根據(jù)計(jì)算元素進(jìn)行保留。②點(diǎn)擊“插入”菜單,選擇“數(shù)據(jù)透視表”功能,選擇“表格和區(qū)域”確定。在表右側(cè)窗口(圖2),礦體號(hào)打勾,選擇Pb加入∑值區(qū)域2次,點(diǎn)擊“Pb”選擇平均值項(xiàng),點(diǎn)擊“Pb2” 選擇標(biāo)準(zhǔn)偏差項(xiàng),多元素重復(fù)操作步驟。③上述操作完成后,即可得到各礦體的品位算術(shù)平均值和標(biāo)準(zhǔn)偏差(均方差)值數(shù)據(jù),再按變化系數(shù)公式計(jì)算出結(jié)果(見(jiàn)圖3)。厚度變化系數(shù)計(jì)算方法相同,只是基礎(chǔ)數(shù)據(jù)采用不同,在此就不作詳細(xì)介紹。
圖2 數(shù)據(jù)透視表字段對(duì)話窗口
圖3 變化系數(shù)計(jì)算結(jié)果
筆者主編多個(gè)大型復(fù)雜的資源儲(chǔ)量核實(shí)報(bào)告及資源儲(chǔ)量估算工作,總結(jié)出以下幾點(diǎn):
(1)加權(quán)平均品位計(jì)算應(yīng)用程序可用于資源量計(jì)算工作中,有效減少工作量和計(jì)算出錯(cuò)率,節(jié)約時(shí)間和人工成本。
(2)數(shù)據(jù)透視的靈活運(yùn)用可快速計(jì)算礦體品位(厚度)變化系數(shù)值、品位最大值等;該功能可用于多種數(shù)據(jù)統(tǒng)計(jì)工作。
(3)在實(shí)際地質(zhì)工作中,VBA程序的利用,使我們的計(jì)算工作更高效精準(zhǔn),表格更規(guī)范化,有效縮減了技術(shù)人員編制報(bào)告時(shí)間。
上述方法,本人經(jīng)過(guò)多次計(jì)算驗(yàn)證結(jié)果完全正確,并對(duì)VBA代碼編譯無(wú)誤檢查和驗(yàn)證,方法可行,可在資源量/儲(chǔ)量估算中應(yīng)用。