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