康曉龍 白秀平 布日古德
摘 要:KKS標(biāo)識系統(tǒng)是電廠管理信息系統(tǒng)的基礎(chǔ)。編碼的質(zhì)量好壞直接影響整個信息管理中各個環(huán)節(jié)的應(yīng)用。KKS碼數(shù)量大、工作繁重,人工編制過程中經(jīng)常紕漏,不規(guī)范的情況。本文介紹通過利用EXCEL中宏的強(qiáng)大功能來實(shí)現(xiàn)對功能位置KKS的智能編碼,詳細(xì)說明了本設(shè)計的具體功能、實(shí)現(xiàn)原理及效果展示。利用些小程序解決了人工手動編碼的一些弊端,層級結(jié)構(gòu)清晰,方便易用,在保證編碼正確率的前提下,大大提高了編碼效率。
關(guān)鍵詞:功能位置;KKS;智能編碼;EXCEL宏;VBA
DOI:10.16640/j.cnki.37-1222/t.2019.09.130
1 軟件設(shè)計概述
1.1 軟件使用概述
根據(jù)XX集團(tuán)《發(fā)電企業(yè)設(shè)備功能位置(KKS)編碼導(dǎo)則》標(biāo)準(zhǔn)要求,編碼采用樹形結(jié)構(gòu),將KKS分為5級編碼,依次為:機(jī)組編碼,系統(tǒng)級編碼,子系統(tǒng)編碼,設(shè)備碼及部件碼。中文描述應(yīng)按照從機(jī)組級、系統(tǒng)級一直到設(shè)備級的原則,若是設(shè)備的部件,則為機(jī)組級、系統(tǒng)級、設(shè)備級、部件級。
如:
根據(jù)標(biāo)準(zhǔn)編碼規(guī)則,本軟件通過在EXCEL表格中給每級單獨(dú)編碼,編碼時只需要填入本級的編碼,如設(shè)備級編碼為AN001,只需在設(shè)備級對應(yīng)的單元格中填入AN001,機(jī)組級系統(tǒng)級和子系統(tǒng)編碼會自動根據(jù)其上一級的編碼自動生成KKS碼及其描述。表格中包括KKS 5級編碼,每級編碼描述,最后生成的KKS碼,功能位置描述,上一級KKS碼,上一級功能位置描述共10列。
1.2 功能概述
分級自動生成編碼:能夠按照標(biāo)準(zhǔn)要求分層級,只對一級進(jìn)行編碼就能夠連同上級編碼一同自動生成KKS碼、功能位置描述及上級KKS和描述,大大提高了編碼速度。
編碼輸入提示:在給每級進(jìn)行編碼時,所選單元格處會有輸入提示從而減少錯誤率。
編碼格式錯誤檢測:能夠自動識別編碼時輸入的格式是否符合要求,當(dāng)不符合要求時會自動報錯停止并顯示錯誤信息要求重新輸入。
KKS查重:每生成一個KKS編碼,軟件都會自動檢查是否有重復(fù)的KKS,當(dāng)有相同的KKS編碼時,會將重復(fù)的數(shù)據(jù)突出顯示。
2 軟件設(shè)計原理
2.1 KKS編碼及其功能位置描述自動生成原理
利用EXCEL中 Worksheet_Change事件驅(qū)動代碼執(zhí)行。
KKS=(上一級KKS)&(當(dāng)前所選單元格編碼)
功能位置描述 =(上一級功能位置描述)&(當(dāng)前編碼描述)
上一級KKS:利用一個循環(huán),從機(jī)組編碼列到所選單元格所在列,然后向上查找所選單元格前一列對應(yīng)的不為空的值,每個循環(huán)所查找的值進(jìn)行邏輯運(yùn)算相與就得到上級KKS編碼。
上一級功能位置描述:原理和kks生成方法一樣。
實(shí)現(xiàn)代碼如圖1。
2.2 編碼輸入提示、編碼格式錯誤檢測實(shí)現(xiàn)方法
利用數(shù)據(jù)有效性即可實(shí)現(xiàn)單元格數(shù)據(jù)輸入提示、格式限制、出錯停止并提示錯誤信息。分別對輸入的每一列進(jìn)行數(shù)據(jù)有效性設(shè)置,有效性條件:允許設(shè)置為自定義,然后輸入每一列的條件限制公式;輸入信息:標(biāo)題設(shè)置為“請輸入xx編碼”輸入信息設(shè)置為“每列的輸入條件提示”,如設(shè)備碼列:“ AANNNA (N) ”,A為大寫英文字母,N為阿拉伯?dāng)?shù)字;出錯警告:樣式為停止,標(biāo)題設(shè)為“輸入錯誤請重新輸入”,錯誤信息設(shè)為“輸入的設(shè)備編碼不符合標(biāo)準(zhǔn)要求”。
2.3 KKS碼查重
對KKS碼列進(jìn)行:條件格式設(shè)定>突出顯示單元格規(guī)則>重復(fù)值。
2.4 效果展示
3 結(jié)束語
本設(shè)計充分利用了EXCEL中宏的強(qiáng)大功能及VB語言和數(shù)據(jù)有效性,很好的解決了人工編碼時易出錯、重復(fù)、編碼混亂、不易整理等缺點(diǎn),大大提高了工作效率。
參考文獻(xiàn):
[1]林卓然.VB語言程序設(shè)計(第4版)[M].北京:電子工業(yè)出版社,2016(08).
[2]蒲括,邵朋.精通Excel數(shù)據(jù)統(tǒng)計與分析[M].北京:人民郵電出版社,2014(06).
[3]ExcelHome.Excel2013函數(shù)與公式應(yīng)用大全[M].北京:北京大學(xué)出版社,2016(05).
[4]尚品科技.Excel VBA 編程實(shí)戰(zhàn)寶典[M].北京:清華大學(xué)出版社,2018(07).
作者簡介:康曉龍(1993-),男,山西人,本科,工程師,從事信息化工作。