李輝 劉亞 陳政 張潤濤
摘? ? 要:分析了船舶設(shè)計過程中各專業(yè)生產(chǎn)設(shè)計物量統(tǒng)計工作的內(nèi)容及要求,針對統(tǒng)計工作項目較多、分類較細、表格數(shù)量龐大、手動處理表格操作繁瑣易出錯等問題,開發(fā)了基于Excel軟件的生產(chǎn)設(shè)計物量自動統(tǒng)計程序。實現(xiàn)了生產(chǎn)設(shè)計托盤表讀取、各專業(yè)生產(chǎn)設(shè)計物量自動分類計算及匯總、生產(chǎn)設(shè)計物量報表自動生成等工作的自動化,有效地減少了設(shè)計工作量,提高了工作效率,實現(xiàn)了生產(chǎn)設(shè)計物量數(shù)據(jù)統(tǒng)計信息化管理。
關(guān)鍵詞:生產(chǎn)設(shè)計物量; 數(shù)據(jù)統(tǒng)計; VBA程序設(shè)計
中圖分類號:U662.9? ??? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻標識碼:A
Development and Application of Automatic Statistical Program for Ship Production Design Amount
LI Hui,? LIU Ya,? CHEN Zheng,? ZHANG Runtao
( CSSC Huangpu Wenchong Shipbuilding Co., Ltd.,? Guangzhou 511462 )
Abstract: This paper analyzes the content and requirements of production design amount statistics for various specialties in the process of ship design. A production design amount automatic statistics program based on Excel software has been developed to address the issues of numerous statistical work projects, detailed classification, large number of tables, and cumbersome and error prone manual processing of tables. The automation of production design tray table reading, automatic classification calculation and summary of production design quantities for various specialties, and automatic generation of production design quantity reports has been achieved, which effectively reduces the design workload, improves the work efficiency, and achieves the information management of production design amount data statistics.
Key words: production design amount; data statistics; VBA programming
1? ? ?生產(chǎn)設(shè)計統(tǒng)計數(shù)據(jù)
隨著市場競爭的日趨激烈,對船舶制造成本的精細化管理成為各船廠十分重要的一項工作。其中,生產(chǎn)設(shè)計物量的統(tǒng)計與匯總成為了船廠管理中不可缺少的重要一環(huán),其對生產(chǎn)計劃的管理具有指導(dǎo)作用,對成本預(yù)估也具有重要意義。目前,我司船舶生產(chǎn)設(shè)計物量各類報表的生成,基于SPD三維設(shè)計軟件對模型信息的提取,由于SPD三維設(shè)計軟件本身開發(fā)不夠成熟,系統(tǒng)無法自動輸出各專業(yè)生產(chǎn)設(shè)計物量統(tǒng)計匯總表,只能以分段和托盤為單位輸出約1000個Excel物量明細表。按照我司的管理要求,生產(chǎn)設(shè)計物量需按專業(yè)分為船體結(jié)構(gòu)、管子、鐵舾件、風(fēng)管、電舾件、電纜、設(shè)備、內(nèi)裝八大專業(yè),按區(qū)域分為機艙、主船體和上建三大區(qū)域,按施工階段分為C、B、U、P和D五個船舶生產(chǎn)階段,而現(xiàn)有軟件輸出的物量明細表顯然無法滿足要求,因此需要投入大量的人力、時間對軟件輸出的物量明細表進行手動分類和匯總,數(shù)據(jù)的錄入難免會出現(xiàn)錯漏之處,因此迫切需要一款能夠自動提取物量明細表信息并匯總數(shù)據(jù)的程序。
為此,本文研究和分析了生產(chǎn)設(shè)計物量統(tǒng)計內(nèi)容及方法,并采用Excel VBA編程,設(shè)計了一款生產(chǎn)設(shè)計物量自動統(tǒng)計與匯總的程序。該程序?qū)崿F(xiàn)了自動讀取SPD三維設(shè)計軟件輸出的各專業(yè)物量明細表,通過程序的后臺運行和計算,完成產(chǎn)品八大類的設(shè)計物量明細表的統(tǒng)計與匯總工作,并輸出為全船生產(chǎn)設(shè)計物量統(tǒng)計表,將繁瑣且易出錯的Excel工作表手動統(tǒng)計與匯總轉(zhuǎn)化為程序的自動化處理,大幅度地減少了生產(chǎn)設(shè)計物量統(tǒng)計時間,提高工作效率,確保生產(chǎn)設(shè)計物量表的完整性和準確性。
2? ? 自動統(tǒng)計程序分析
船舶生產(chǎn)設(shè)計物量數(shù)據(jù)表格繁雜,需要統(tǒng)計的物量數(shù)據(jù)種類多、數(shù)量大,設(shè)計一款實用可靠的物量統(tǒng)計程序,首先需要根據(jù)不同專業(yè)物量數(shù)據(jù)的特點,分析其主要數(shù)據(jù)來源及需要統(tǒng)計輸出的匯總數(shù)據(jù),按專業(yè)統(tǒng)計內(nèi)容,可以將船舶生產(chǎn)設(shè)計物量分為以下八類:結(jié)構(gòu)物量、管子物量、鐵舾件物量、風(fēng)管物量、電舾件物量、電纜物量、設(shè)備物量、內(nèi)裝物量。
2.1? ?船體結(jié)構(gòu)設(shè)計物量
船體結(jié)構(gòu)設(shè)計物量統(tǒng)計數(shù)據(jù),取自各分段《零件明細表》 、《材料匯總表》和《套料板信息匯總表》,其統(tǒng)計的分項數(shù)據(jù)項目,如表1所列。
2.2? ?船舶管子設(shè)計物量
船舶管子設(shè)計物量統(tǒng)計數(shù)據(jù),取自各階段《管子制作托盤表》 、《安裝圖托盤表》和《開孔清冊》 ,其統(tǒng)計的分項數(shù)據(jù)項目,如表2所列。
2.3? ?電纜和電舾件設(shè)計物量
電纜設(shè)計物量統(tǒng)計數(shù)據(jù),提取自各區(qū)域 《分支電纜冊》和《主干電纜冊》;電舾件設(shè)計物量統(tǒng)計數(shù)據(jù),取自《電舾件安裝托盤表》。電纜和電舾件統(tǒng)計的分項數(shù)據(jù)項目,如表3所列。
2.4? ?內(nèi)裝設(shè)計物量
內(nèi)裝設(shè)計物量統(tǒng)計數(shù)據(jù),取自《內(nèi)裝托盤表》 ,其統(tǒng)計的分項數(shù)據(jù)項目,如表4所列。
2.5? ?設(shè)備設(shè)計物量
設(shè)備設(shè)計物量統(tǒng)計數(shù)據(jù),取自各階段 《設(shè)備安裝托盤表》中備注設(shè)備的數(shù)量和重量,按輪機、船裝、電氣和暖通專業(yè)分別統(tǒng)計。
2.6? ?風(fēng)管設(shè)計物量
風(fēng)管設(shè)計物量統(tǒng)計數(shù)據(jù),取自各階段《風(fēng)管安裝托盤表》中方風(fēng)管數(shù)量和重量、螺旋風(fēng)管長度、風(fēng)管吊架的數(shù)量和重量。
通過對船舶各專業(yè)生產(chǎn)設(shè)計物量統(tǒng)計表分類分項,統(tǒng)計數(shù)據(jù)來源和各項統(tǒng)計要求的整理和分析,總結(jié)出各類物量統(tǒng)計的計算方法,并對各分類分項統(tǒng)計源工作表進行分類,為程序設(shè)計和開發(fā)做好前期準備工作。
2.7? ?鐵舾件設(shè)計物量
鐵舾設(shè)計物量統(tǒng)計數(shù)據(jù)提取自各階段的《鐵舾件安裝托盤表》中踏步、欄桿、人孔蓋等鐵舾件的數(shù)量和重量。
通過對船舶各專業(yè)生產(chǎn)設(shè)計物量統(tǒng)計表分類分項,統(tǒng)計數(shù)據(jù)來源和各項統(tǒng)計要求的整理和分析,總結(jié)出各類物量統(tǒng)計的計算方法,并對各大分類分項統(tǒng)計源工作表進行分類,為程序設(shè)計和開發(fā)做好前期準備工作。
3? ? 自動統(tǒng)計程序設(shè)計
本程序設(shè)計是利用Excel辦公軟件,運用其自帶的宏模塊和VBA開發(fā)環(huán)境進行二次開發(fā),根據(jù)前期梳理的各分類分項統(tǒng)計方法和內(nèi)容,設(shè)計出多個Excel表數(shù)據(jù)自動篩選計算匯總統(tǒng)計的程序,最終輸出全船生產(chǎn)設(shè)計物量統(tǒng)計報表。
3.1? ?開發(fā)流程
船舶生產(chǎn)設(shè)計物量自動統(tǒng)計程序開發(fā)的主要流程,如圖1所示。
1)選擇需要統(tǒng)計的專業(yè),打開存放該專業(yè)數(shù)據(jù)的文件夾;
2)判斷該文件夾是否包含Excel文件,如果包含則需要選擇文件(默認為全選);
3)逐個打開Excel文件,根據(jù)工作表名稱或表頭信息判斷統(tǒng)計哪些類別的物量,并執(zhí)行代碼,將物量統(tǒng)計結(jié)果寫入對應(yīng)的匯總表。
3.2? ?關(guān)鍵代碼
本程序應(yīng)用條件語句、正則表達式、數(shù)組、通配符以及函數(shù)等解決關(guān)鍵技術(shù)難點。
1)關(guān)鍵代碼1
判斷管子專業(yè)文件夾中每個文件需要統(tǒng)計哪些物資類別,首先通過判斷SPD導(dǎo)出的Excel工作表名稱實現(xiàn),具體代碼因篇幅所限,略。
2)關(guān)鍵代碼2
在結(jié)構(gòu)材料匯總表中,區(qū)分鋼板、型材、管材,僅通過名稱無法準確區(qū)分,而其規(guī)格型號卻有一定規(guī)律,因此需要用正則表達式來解決,具體代碼因篇幅所限,略。
3)關(guān)鍵代碼3
統(tǒng)計設(shè)備數(shù)量時,需要將所有設(shè)備明細都體現(xiàn)在匯總表上,此時只有數(shù)組才能解決該問題,將需要匯總的項目先存在數(shù)組中,然后再寫入對應(yīng)的匯總表,具體代碼因篇幅所限,略。
3.3? ?操作方法
通過VBA編程,設(shè)計出簡潔易懂的程序操作界面,本程序主要操作流程如下:
1)打開Excel生產(chǎn)設(shè)計物量自動統(tǒng)計程序,自動彈出操作窗口,此時Excel處于不能編輯狀態(tài),如需編輯則關(guān)閉窗口,切換工作表時會再次彈出操作窗口;
2)在最上方的標簽中選擇一個專業(yè);
3)點擊選擇一個文件夾按鈕,在待選擇文件和已選擇文件中顯示當前選中的文件夾中所有文件;
4)根據(jù)需要刪減文件數(shù)量;
5)點擊右下角匯總XX專業(yè)物量;
6)匯總完成后,會彈出提示XX物量匯總完畢,點擊確定;
7)結(jié)構(gòu)物量多次統(tǒng)計是在原有數(shù)據(jù)上更新,其他專業(yè)點擊匯總后會將原有數(shù)據(jù)刪除,只顯示本次選擇的文件數(shù)據(jù)。
3.4? ?使用要求
在產(chǎn)品設(shè)計服務(wù)器建立共享文件夾,用于存放各產(chǎn)品船各專業(yè)生產(chǎn)設(shè)計托盤表,要求各設(shè)計人員在完成生產(chǎn)設(shè)計圖紙下發(fā)后及時將Excel表文件要求存放在相應(yīng)文件夾。
SPD導(dǎo)出格式或者PDM導(dǎo)入格式,不要隨意增加、刪減單元格列,管子各類表格SPD生成的工作表名稱不允許更改;各類設(shè)備安裝托盤表中,要統(tǒng)計的設(shè)備項需在備注中注明設(shè)備二字,且設(shè)備的重量要填寫準確;風(fēng)管安裝托盤表,需在表中部件類別中正確區(qū)分方風(fēng)管、螺旋風(fēng)管、風(fēng)管吊架。
3.5? ?輸出結(jié)果
通過程序匯總輸出生產(chǎn)設(shè)計物量表格。
4? ? 程序應(yīng)用及成果
本文開發(fā)的生產(chǎn)設(shè)計物量統(tǒng)計程序,已在我司海工廠區(qū)多個產(chǎn)品的設(shè)計物量統(tǒng)計工作中推廣應(yīng)用,優(yōu)化了設(shè)計管理工作,將原來由各分段、總段設(shè)計人員的生產(chǎn)設(shè)計物量統(tǒng)計工作,調(diào)整到項目主管統(tǒng)一管理和輸出,有效地減少了各產(chǎn)品生產(chǎn)設(shè)計人員的工作量,確保了生產(chǎn)設(shè)計物量統(tǒng)計的完整性和準確性,提高了工作效率,減少了設(shè)計工時。
5? ? 結(jié)論
本文運用Excel軟件結(jié)合VBA應(yīng)用,開發(fā)了生產(chǎn)設(shè)計物量統(tǒng)計程序,有效地實現(xiàn)了生產(chǎn)設(shè)計物量統(tǒng)計工作的自動化,對提高生產(chǎn)設(shè)計物量的準確性,減少設(shè)計工人員非設(shè)計工時具有很大的幫助。因本文作者水平所限,現(xiàn)階段只能做到各專業(yè)物量明細表按指定位置存放再用程序處理物量明細表的程度,但本次開發(fā)積累了相當?shù)慕?jīng)驗,為我們下一步的研究指明了方向。根據(jù)對業(yè)內(nèi)一些從業(yè)人員的了解,基于三維設(shè)計軟件的嵌入式程序的開發(fā)是業(yè)內(nèi)的主流,因此未來將結(jié)合我司實際情況,進行基于SPD三維設(shè)計軟件的嵌入式物量統(tǒng)計程序開發(fā),更好的服務(wù)于公司的生產(chǎn)與管理。
參考文獻
[1] 羅剛君. Excel 2010 VBA編程與實踐[M]. 北京:電子工業(yè)出版社,2010.