


摘 要 excel vba是 office應用程序共享的一種通用的自動化語言, 可以使常用的 office應用程序自動化, 創建自定義宏程序[1-2]。結合林業調查項目數據采集、數據統計、數據匯總的實際作業要求,采用excel vba,對林業調查的數據采集、數據自動統計和匯總等功能模塊,進行了設計與開發。實例表明,該方法操作簡單,結果可靠,提高了林業調查數據的采集與數據匯總效率,實用性很強。
關鍵詞 excel vba;統計;匯總;林業調查測繪
導言
林業調查、規劃設計是林業生產建設的重要組成部分,通過林業調查對各類林業信息進行綜合分析,并提出相應的規劃設計。根據北京市某地施工現場臨時用地范圍內綠地、樹木、苗木、花卉、草坪等綠地資源的調查、測繪作業及成果的基本要求[3-4],采用excel vba設計并開發林業調查、測繪數據采集與數據匯總自動化程序。
林業調查測繪作業及成果[3-4]要求如下:
(1)常綠喬木需量取距地面30cm的地徑、樹高,其他喬木量取距地面1.3m的胸徑;喬木晉級:胸徑5cm;
(2)所有灌木只量取其樹高;高度0.5m;
(3)色帶按延米測量,色塊按面積測量,兩者均量取平均高度;
(4)宿根和草坪均按面積測量;
(5)現有樹木統計表、匯總表;
(6)現有樹木分布調查成果圖(dwg格式)。
1林業調查測繪樹木統計表、匯總表基本格式要求
1.1 現有樹木統計表成果格式[3-4]
苗木統計表,精確體現了喬木、灌木數量及胸徑高度等主要參數,作為后期園林規劃設計量化參數依據。統計表主要包括喬、灌木統計成果,苗木統計表字段包含:編號、樹種、數量/株、胸徑/cm,高度/m,其中喬木統計胸徑與數量,灌木統計數量與高度,成果格式示例如圖1。
1.2 樹木匯總表成果格式[3-4]
現有樹木匯總表,比較好的體現了樹木整體分布情況,同時也是后期園林苗木規劃設計的主要參數,因此對樹木調查數據的匯總非常必要。
樹木匯總主要苗木包括,喬木、灌木、色塊、宿根、樹樁、草坪等。表內主要字段包括序號、樹種、胸徑(D)/cm、地徑(D)/cm、高度(H)/m、數量/株、備注、合計/株等。
(1)常綠喬木匯總以高度為晉級標準,每0.5m作為一個匯總晉級單位,另外單株常綠喬木以單株樹高作為匯總單位;
(2)灌木匯總方法同常綠喬木匯總;
(3)對于普通季節性喬木以胸徑作為晉級標準,每5cm作為一個晉級匯總單位,其中單株普通喬木,以單株胸徑為單株匯總單位;
(4)喬木樹樁匯總方法同普通季節性喬木;
(5)色塊、宿根、草坪等匯總以面積或延米為匯總單位。
喬木、喬木樹樁等匯總成果表如圖2,灌木、宿根、色塊、草坪等匯總表如圖3。
2現有樹木統計表的自動化實現
根據現有樹木(喬木、灌木)統計表的格式基本要求,在園林外業手簿中加入兩列每株喬灌木的坐標參數,因為每株喬灌木的坐標參數是唯一確定的,通過每一株樹木的外業測量編號和坐標值可以唯一確定一株樹木的特點,在excel表中編輯匹配和關聯公式,即可完成統計表的自動生成[5]。喬灌木成果圖示例如圖4所示:
圖4中示例為喬灌木圖面統計數據,每株樹都唯一對應一個內業編號與坐標信息,每個坐標信息又唯一對應一個外業數據采集編號,通過autocad lisp編程將圖中的喬灌木自動連線,并標注各喬灌木的統計信息,并提取出每株喬灌木的坐標信息,與內業編號相匹配。內業處理過程中只需將外業測量的坐標與點號信息加入excel表中,通過匹配函數:IF(外業記錄表!F8<>"",IF(A8<>"",VLOOKUP(A8,外業記錄表!A:J,6,0),""),"")即可自動生成圖5中的苗木統計表。
3現有樹木自動化匯總程序的設計實現
3.1 匯總表界面設計
生成樹木統計表后,由于人工苗木匯總,往往造成統計表與匯總表數據不相符的質量問題,為了準確匯總,采用excel自帶的vba宏[5],設計并實現了林業調查測繪外業記錄電子手簿。該電子手簿界面友好,操作簡單,外業記錄手簿在現有樹木數據采集過程中,具有點號查重功能,有效規避了外業點號錄入的錯誤,確保了后期成圖、統計和匯總的準確。并通過樹種參數表預制了樹種字典,外業人員既可以自己輸入樹種數據,并更新樹種字典內容,也可以按照已設置的樹種字典,在下拉列表框中選擇樹種數據,設置相關參數和量測數據,通過匯總按鈕實現了樹種的一鍵匯總的功能[1-2]。數據采集界面如圖6,圖7所示。
3.2 一鍵匯總程序的實現
(1)各sheet表單的建立
為實現一鍵匯總的功能模塊,建立參數sheet表單、數據源sheet表單、匯總表sheet表單及編碼sheet表單。
1)參數表單根據苗木匯總參數設置;該表單設置序號、品種、樹種、測量屬性、取值范圍、外業記錄表是否存在、是否出現在統計表等字段,并引入調入錄入窗體按鈕,通過該按鈕可以進入數據錄入界面與數據一鍵匯總界面。
2)數據源表單為實現樹木統計與匯總設計,該表內的數據可以通過數據外業數據錄入界面直接保存錄入,表中坐標記錄可以通過外業dat數據文件根據點號自動匹配進來,數據源表單主要字段包括:外業編號、樹種、編碼、數量、胸徑(D)/cm、地徑(D)/cm、高度(H)/m、面積(s)/㎡、延米(L)/m、備注、內業編號、坐標X、坐標Y等。
3)匯總表表單,可以通過生成匯總表按鈕一鍵生成匯總成果表。匯總表如圖2、圖3所示。
4)編碼表單是一個內外業坐標數據采集編碼對照表,為編寫各種苗木自動展點、坐標提取lisp程序服務。編碼表表單字段主要包括:編碼(南方cass展點編碼)、拼音碼(外業數據采集人工編碼)、樹種、拼音碼(正式拼音匹配碼、簡碼,為cad lisp程序自動簡碼識別服務)各sheet表單字段如圖8、圖9、圖10所示。
(2)現有樹木一鍵匯總程序模塊主體代碼
4結束語
結合一線林業調查測繪人員的實際內外業的作業困難,通過excel自帶函數和vba自定義宏程序,提出了一個樹木自動統計和自動匯總的實際解決方案,該方案較完美實現了所調查苗木的統計與匯總數據的準確性,并一定程度上提高了一線人員的內外業作業效率,具有一定的實踐意義。但是由于本解決方案僅實現了基于excel表,通過vba編程的自動計算,因此對于林業調查測繪cad成果圖的圖形與屬性聯動方面尚存在不足。隨著計算機信息智能化的發展,林業調查測繪數據采集與處理,宜建立相關專題數據庫,以確保各項林業調查數據的嚴密性和準確性,之后這方面,仍需要進一步的研究與發展,為滿足林業調查測繪進一步的自動化、智能化生產服務。
參考文獻
[1] 羅國發,周慶麟. 別怕,excel vba其實很簡單[M].北京:人民郵電出版社,2016:73.
[2] 王浩,馬玉軍,陳連山,等.從入門到精通visual basic[M].北京:化學工業出版社,2011:33.
[3] 中華人民共和國林業部.林業專業調查主要技術規定[M].北京:中國林業出版社,1990:109.
[4] 森林資源規劃設計調查技術規程:GB/T 26424-2010[S].北京:中國標準出版社,2010.
[5] 李輝,郝艷芬 .Excel2003 VBA辦公應用[M].北京:人民郵電出版社,2006:119.
作者簡介:
張樹基(1980-),男,遼寧大連人;學歷:碩士,職稱:工程師,現就職單位:上海市建筑科學研究院有限公司,研究方向:工程監測與地理信息工程。