仲 劼
新疆煤田地質(zhì)局一五六煤田地質(zhì)勘探隊(duì),新疆烏魯木齊 830009
在煤田地質(zhì)報(bào)告編寫的過程當(dāng)中,常有大量樣品進(jìn)行統(tǒng)計(jì)分析。統(tǒng)計(jì)的基礎(chǔ)和標(biāo)準(zhǔn)是各個(gè)煤心樣品的煤層層位。根據(jù)樣品編號(hào)孔號(hào)深度信息,對(duì)照煤巖層對(duì)比圖件添加煤層號(hào)是重要工作步驟。面對(duì)少量的樣品,不復(fù)雜的煤層發(fā)育情況,一個(gè)人也可以很快完成。但是面對(duì)大量數(shù)據(jù),比如說成百上千個(gè)樣品,我們只能逐個(gè)進(jìn)行對(duì)照添加,費(fèi)時(shí)費(fèi)力,還容易出錯(cuò)。下面我就這項(xiàng)工作如何運(yùn)用Microsoft Excel 方便高效準(zhǔn)確的完成,進(jìn)行一些探討。
煤田地質(zhì)勘探中,煤心煤樣化驗(yàn)指標(biāo)眾多,同一個(gè)樣品的化驗(yàn)結(jié)果存在于多個(gè)化驗(yàn)門類表格中。這就產(chǎn)生了兩個(gè)問題:1)為樣品添加采樣位置、所屬煤層編號(hào)等工程類信息;2)從多個(gè)表格中提取我們需要的數(shù)據(jù)信息,將樣品的信息分別添加到多個(gè)化驗(yàn)表中。
Excel 擁有強(qiáng)大的數(shù)據(jù)處理功能,在使用中也常會(huì)會(huì)使用一些信息對(duì)照,返回需要的內(nèi)容。我們可以通過以下三種方法實(shí)現(xiàn):
1)單一對(duì)應(yīng)條件通過lookup 函數(shù)匹配。如:根據(jù)樣品編號(hào)返回樣品數(shù)據(jù)信息;
2)多對(duì)應(yīng)條件通過高級(jí)篩選功能匹配。如:根據(jù)鉆孔、煤層號(hào)返回煤質(zhì)信息;
3)復(fù)雜對(duì)應(yīng)條件通過VBA 程序設(shè)計(jì)實(shí)現(xiàn)。如:根據(jù)樣品信息返回?cái)?shù)據(jù)庫中煤層號(hào)。
下面我就這三種方法分別說明:
1)使用Excel 提供的vlookup 函數(shù)可以實(shí)現(xiàn)單一條件的匹配和返回所需信息,使用較方便。例如,我們?cè)谝粋€(gè)龐大的煤質(zhì)表格中需要提取一定數(shù)目的煤質(zhì)數(shù)據(jù),我們可以根據(jù)樣品的唯一編號(hào)使用vlookup 函數(shù),在表格或數(shù)值數(shù)組的首列查找指定的數(shù)值,并由此返回表格或數(shù)組當(dāng)前行中指定列處的數(shù)值;
2)對(duì)于多條件的數(shù)據(jù)匹配我們可以使用excel 提供的高級(jí)篩選功能,實(shí)現(xiàn)多個(gè)條件的匹配。例如我們需要使用鉆孔號(hào)、煤層號(hào)來獲得這個(gè)特定鉆孔、特定煤層的煤質(zhì)數(shù)據(jù)。這時(shí)我們有兩個(gè)條件需要滿足,分別是鉆孔號(hào)和煤層號(hào)。根據(jù)這兩個(gè)條件對(duì)子表和母表重新排序后,使用高級(jí)篩選功能可實(shí)現(xiàn)兩表的快速對(duì)接,提取所需信息;
3)依據(jù)鉆孔地質(zhì)分層數(shù)據(jù)給煤層添加煤層號(hào)是復(fù)雜條件匹配,因?yàn)槲覀円瑫r(shí)滿足多個(gè)條件,而且條件不是完全對(duì)應(yīng)關(guān)系,而是頂?shù)装寮懊簩雍穸缺葘?duì)的問題。這時(shí)我們就需要VBA 程序編輯來實(shí)現(xiàn)煤層樣品和鉆孔中的煤層配對(duì)。例如圖1中的數(shù)據(jù),我們發(fā)現(xiàn)樣品的采集深度段距和鉆孔中的煤層頂?shù)装宥尉嗍前蛘咤e(cuò)位對(duì)應(yīng)關(guān)系,這就加大了匹配難度,而運(yùn)用VBA 程序?qū)崿F(xiàn)快速準(zhǔn)確添加煤層號(hào)。就此法進(jìn)行重點(diǎn)介紹:
圖1 添加煤層號(hào)宏數(shù)據(jù)表EXCEL 格式
表格數(shù)據(jù)共分為三類:1)樣品信息(左):錄入的原始信息,為添加煤層號(hào)的對(duì)象;2)數(shù)據(jù)庫煤層特征點(diǎn)信息(右):已錄好的GIS 軟件數(shù)據(jù)庫中數(shù)據(jù),為比對(duì)計(jì)算的依據(jù);3)樣品對(duì)應(yīng)作息(中):比對(duì)計(jì)算后返回的煤層數(shù)據(jù),為計(jì)算結(jié)果。
運(yùn)用循環(huán)算法,反復(fù)比對(duì)的算法,可以實(shí)現(xiàn)快速地添加煤層號(hào):
點(diǎn)擊“比對(duì)計(jì)算”按鈕,代碼如下:
以上方法在煤田地質(zhì)勘探實(shí)際應(yīng)用中可以提高效率和準(zhǔn)確性。為樣品添加煤層號(hào)的宏采用了可以直觀看到比對(duì)結(jié)果的樣式,使用者比較易于接受。靈活運(yùn)用Excel 軟件處理大量數(shù)據(jù),尤其是VBA 程序的合理使用對(duì)繁雜重復(fù)的工作往往可達(dá)到事半功倍的效果。以上只是介紹了煤質(zhì)數(shù)據(jù)處理時(shí)的幾種方法,由于沒有完善化、體系化,比較零散,僅供讀者參考。
[1](美)John Walkenbach,中文版Excel 2003寶典:電子工業(yè)出版社,2004,5.
[2](美)沃肯巴赫 著,尚紅昕,劉玲,等譯;Excel應(yīng)用技巧寶典,電子工業(yè)出版社,2006,1.
[3]王鴻儒.EXCEL VBA(2000-2003)程序設(shè)計(jì)[M].北京:中國鐵道出版社,2005.