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