1 單位設(shè)備管理現(xiàn)狀
本人所在單位是一所高校,過去設(shè)備長期使用手工管理的方式,近年隨著設(shè)備數(shù)量增加,雖然部分使用Excel,但是因?yàn)楣芾磉^程中經(jīng)手人太多,Excel的使用水平參差不齊,再加上沒有標(biāo)準(zhǔn)的規(guī)范。導(dǎo)致了目前整個(gè)設(shè)備管理混亂、低效。鑒于這種情況,學(xué)校決定全面采用信息化管理。
2 解決方案
為了改變單位設(shè)備管理現(xiàn)狀,我們采用Excel管理設(shè)備,并通過VBA自動(dòng)實(shí)現(xiàn)。
在Excel中建立“設(shè)備詳細(xì)信息”表、“校園樓宇分布示意圖”表和“樓層房間分布示意圖”表。在后文中分別稱為信息表、校園圖、樓層圖。在校園圖中顯示出樓字的分布位置。樓層圖中顯示出該樓各層平面結(jié)構(gòu),并統(tǒng)計(jì)出每個(gè)房間的設(shè)備種類和數(shù)量。需要了解房間設(shè)備具體情況時(shí),通過某個(gè)操作(如雙擊房間),快捷、準(zhǔn)確地顯示該房間設(shè)備的詳情。
3 方案的具體實(shí)施
3.1 建立“信息表”該表內(nèi)容為設(shè)備各種屬性,越全面越好。需要注意的是,每臺(tái)設(shè)備建立一條記錄,如1個(gè)房間有多臺(tái)同樣設(shè)備就要有多條記錄,每條記錄編號等信息應(yīng)不同。
3.2 建立“校園圖”和各樓宇的“樓層圖”用繪制自定義圖形畫出每一棟樓的外形,然后按照它的地理位置將它分布到合適位置,這樣就畫出了整個(gè)校園的樓宇分布圖。
給單元格寫入門牌號模擬1個(gè)房間,按照房間分布情況1層層排列單元格,就畫出了每棟樓的“樓層圖”。我們用1張工作表建立1棟樓的示意圖,并且將表名稱改為對應(yīng)樓名稱。我們在每個(gè)門牌號下方留出1個(gè)空單元格,調(diào)整到合適大小用來填寫統(tǒng)計(jì)的設(shè)備種類和數(shù)量。
3.3 校園圖→樓層圖在“校園圖”中,選中1個(gè)樓宇→右鍵單擊→超鏈接→本文檔中對應(yīng)“樓層圖”所在的工作表。這樣將來直接單擊它就會(huì)打開對應(yīng)樓的“樓層圖”。
3.4 統(tǒng)計(jì)每個(gè)房間的設(shè)備情況通過門牌號要在“信息表”中統(tǒng)計(jì)出該房間各類設(shè)備的數(shù)量,并填到下方空單元格內(nèi)。
a)建立1個(gè)“統(tǒng)計(jì)數(shù)量”表
b)表格第1行建立表頭,內(nèi)容為“門牌號、設(shè)備類型”
c)表格第A列第2行開始填入所有房間的門牌號
d)以門牌號在“信息表”中查詢出該房間各類設(shè)備數(shù)量填入對應(yīng)類別下
公式說明:該公式用sumproduct函數(shù)在“信息表”F列(設(shè)備信息中F列為地址)中查詢和“統(tǒng)計(jì)數(shù)量表”$A17(為具體門牌號地址,如:4-206)內(nèi)容相同的記錄,同時(shí)又在G列(設(shè)備信息中G列為設(shè)備類型)中查詢和B$1(“統(tǒng)計(jì)數(shù)量”表頭中的設(shè)備類型)相同的記錄。當(dāng)2個(gè)條件都滿足是記一次數(shù)。最終統(tǒng)計(jì)出全部3000記錄中符合條件的設(shè)備總數(shù)。用同樣方法得到其他類別設(shè)備總數(shù)
e)用字符串運(yùn)算符“&”將統(tǒng)計(jì)總數(shù)變成文字
字符運(yùn)算符&,可以直接將前后字符鏈接起來。
公式說明:B3是設(shè)備數(shù)量(如為1),B1是設(shè)備類別(如為計(jì)算機(jī)),結(jié)果是“1臺(tái)計(jì)算機(jī):”。IF用來判斷房間沒有該類型設(shè)備時(shí)的情況。
用同樣方法將別的類型變成文字描述。再用“&”將它們都連起來,就形成了該房間設(shè)備的完整文字描述。如:“1臺(tái)計(jì)算機(jī);2臺(tái)打印機(jī);3臺(tái)筆記本”。
f)將上面的結(jié)果直接引用到“樓層圖”中門牌號下方空單元格內(nèi)顯示
3.5 雙擊門牌號單元格時(shí),高亮顯示該房間設(shè)備詳細(xì)記錄后面的功能我們用VBA代碼編寫的宏實(shí)現(xiàn)。
This WorkBook中的代碼:
“雙擊鼠標(biāo)左鍵”事件宏:這個(gè)宏用來在工作表中發(fā)生“雙擊鼠標(biāo)左鍵”事件時(shí),調(diào)用“高亮顯示對應(yīng)記錄”宏P(guān)rivate Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object,ByVal Trarget As Range,Cancel As BooLEAN)高亮顯示對應(yīng)記錄
End Sub
模塊中的代碼:
“高亮顯示對應(yīng)記錄”宏:這個(gè)宏用來在雙擊一個(gè)門牌號單元過后,將地址相對應(yīng)的記錄設(shè)置為高亮。過程如下:
a、將被雙擊的“門牌號”賦值給1個(gè)變量。b、選取信息表→清除整個(gè)背景色→字體設(shè)為默認(rèn)色。c、用For Next建立1個(gè)循環(huán),循環(huán)次數(shù)為表中據(jù)記錄條數(shù)。d、在循環(huán)中將每一記錄對應(yīng)地址單元格內(nèi)容和賦值變量比較,當(dāng)相同時(shí)把這一行設(shè)置為高亮,進(jìn)行下一次循環(huán)。否則直接進(jìn)行下一次循環(huán)。e、將“門牌號”輸出到屏幕。
到此為止設(shè)計(jì)要求已經(jīng)實(shí)現(xiàn)。但為使用戶獲得更好的視覺效果,同時(shí)防止誤操作。
3.6 界面的設(shè)置This WorkBook中的代碼:
“打開文檔時(shí)顯示指定工作表并隱藏部分Excel系統(tǒng)功能”宏:這個(gè)宏在Excel文檔打開是執(zhí)行,顯示“校園圖“工作表,并運(yùn)行“HideMenu”宏(該宏用來隱藏部分Excel系統(tǒng)功能)
“關(guān)閉Excel時(shí)恢復(fù)Excel系統(tǒng)功能”宏這個(gè)宏在通過Excel系統(tǒng)功能關(guān)閉時(shí)執(zhí)行,運(yùn)行“ShowMenu”宏(該宏用來恢復(fù)Excel系統(tǒng)功能)
模塊中的代碼:
“隱藏部分Excel系統(tǒng)功能”宏:
通過上面的代碼文檔打開時(shí)就會(huì)將Excel部分系統(tǒng)功能隱藏,所以用戶將無法退出系統(tǒng)和在工作表中切換。這個(gè)問題可以使用按鈕實(shí)現(xiàn),為了界面美觀,我們沒用“控件”。而用了自定義圖形嶺指定宏來實(shí)現(xiàn),因?yàn)樽远x圖形可以設(shè)置背景和邊框。
3.7 制作按鈕
“返回樓層圖“宏:按鈕放在信息表中,當(dāng)用戶雙擊門牌號高亮顯示對應(yīng)記錄后,用來返回。
“退出系統(tǒng)”宏:這個(gè)按鈕放在校園圖中用來退出系統(tǒng)。下面代碼中首先恢復(fù)系統(tǒng)功能,然后設(shè)置對所有改的都默認(rèn)不保存,最后直接退出Excel。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請注明出處:拓步ERP資訊網(wǎng)http://www.vmgcyvh.cn/
本文標(biāo)題:VBA在設(shè)備管理信息化中的應(yīng)用
本文網(wǎng)址:http://www.vmgcyvh.cn/html/solutions/1401938869.html